mut*_*y91 32 javascript ajax asp.net-mvc jquery vue.js
我正在尝试用来自JsonResultAJAX查询的数据填充Vue .当我从View Model中编码时,我的Vue接收数据就好了,但是当我尝试使用AJAX检索它时却没有.这是我的代码的样子:
<script type="text/javascript">
var allItems;// = @Html.Raw(Json.Encode(Model));
$.ajax({
url: '@Url.Action("GetItems", "Settings")',
method: 'GET',
success: function (data) {
allItems = data;
//alert(JSON.stringify(data));
},
error: function (error) {
alert(JSON.stringify(error));
}
});
var ItemsVue = new Vue({
el: '#Itemlist',
data: {
Items: allItems
},
methods: {
},
ready: function () {
}
});
</script>
<div id="Itemlist">
<table class="table">
<tr>
<th>Item</th>
<th>Year</th>
<th></th>
</tr>
<tr v-repeat="Item: Items">
<td>{{Item.DisplayName}}</td>
<td>{{Item.Year}}</td>
<td></td>
</tr>
</table>
</div>
Run Code Online (Sandbox Code Playgroud)
这与所有适当的包括.我知道@Url.Action("GetItems", "Settings")返回正确的URL并且数据按预期返回(由成功函数中的警报测试(请参阅AJAX中的成功函数中的注释).如此填充它:var allItems = @Html.Raw(Json.Encode(Model));有效,但AJAX查询没有.我是做错了什么?
Sam*_*ker 64
您可以在已安装的函数内部进行ajax调用(在Vuejs 1.x中为"ready").
<script type="text/javascript">
var ItemsVue = new Vue({
el: '#Itemlist',
data: {
items: []
},
mounted: function () {
var self = this;
$.ajax({
url: '/items',
method: 'GET',
success: function (data) {
self.items = JSON.parse(data);
},
error: function (error) {
console.log(error);
}
});
}
});
</script>
<div id="Itemlist">
<table class="table">
<tr>
<th>Item</th>
<th>Year</th>
</tr>
<tr v-for="item in items">
<td>{{item.DisplayName}}</td>
<td>{{item.Year}}</td>
</tr>
</table>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56746 次 |
| 最近记录: |