[英]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.