繁体   English   中英

如何从本地存储读取json并在VUE中显示数据

[英]How to read json from local storage and display data in VUE

我有一个 json(books.json),我想用 VUE 在我的网页上将它的内容显示到一个列表中。 我似乎无法成功。 代码如下所示:

 <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <html> <head> <script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script> </head> <body> <div id="app"> <span>{{items}}</span> <ul> <li v-repeat="items"> <span class="name">{{books.name}}</span><br> <span class="genre">{{books.genre}}</span> </li> </ul> </div> </body> <script> var app= new Vue({ data: { items: null }, created: function () { this.fetchData(); }, methods: { fetchData: function () { var self = this; $.get( 'books.json', function( data ) { self.items = data; }); } } }); </script> </html>

有人可以帮我吗? 谢谢

请更新您的 vue 版本。 我已将v-repeat替换为v-for并将其安装到#app 你也可以在你的 vue 实例中使用el而不是$mount 此外,我已将数据更改为函数。 https://v2.vuejs.org/v2/guide/components.html#data-Must-Be-a-Function

 const app = new Vue({ data() { return { items: null } }, created: function () { this.fetchData(); }, methods: { fetchData: function () { var self = this; // test data this.items = [{ name: 'Test-Name', genre: 'My Genre' }]; // Commented out because we don't have this file. /* $.get( 'books.json', ( data ) => { self.items = data; }); */ } } }); app.$mount('#app');
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://unpkg.com/vue"></script> <div id="app"> <span>{{items}}</span> <ul> <li v-for="book in items" :key="book.name"> <span class="name">{{book.name}}</span><br> <span class="genre">{{book.genre}}</span> </li> </ul> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM