Knockoutjs映射-很难让它工作
Knockoutjs Mapping - Trouble getting it to work
我很难理解映射是如何使用knockoutjs的。
Pretext:
我有一个API,它返回JSON
我想将JSON映射到我的视图中的列表
javascript:
var data = JSON.stringify([
{
"text": "this be some text"
},
{
"text": "some more text here"
}
]);
var viewModel = ko.mapping.fromJSON(data);
var updateData = function(){
var newData = JSON.stringify([
{
"text": "this be some asdfasdfasdf"
},
{
"text": "some more asdfasdfdfdf here"
}
]);
ko.mapping.fromJSON(newData, viewModel);
}
ko.applyBindings(viewModel);
data和newData的格式与我从API调用获取数据的格式相同。(只是对象阵列)
我如何输出这些数据?
<ul data-bind="foreach: whatgoeshere?">
<li data-bind="text: text"></li>
</ul>
感谢你向我解释这种魔法是如何运作的;)祝您愉快
首先应该使用fromJS而不是fromJSON,因为最后一个应该使用包含json的字符串。
另一件事是,你应该这样修改你的视图模型:
{ arr: [ { name:'text' }, ... ] }
在前臂绑定中键入arr。
如果你不想修改你的模型,那么你可以把$root传递给你的foreach,它指向你在ko.applyBindings 中使用的模型
相关文章:
- 在javascript中,I'我很难弄清楚如何让regex只替换捕获而不替换匹配
- 很难将python转换为JS
- Knockoutjs映射-很难让它工作
- 下拉在移动设备上工作很奇怪
- Javascript:很难分析在for循环中包含indexOf的代码
- 我很难让两个jquery脚本一个接一个地工作
- 很难使用angular向JSON文件发出post请求
- 很难理解laravel中的重定向/路由
- 如何显示两个回复,并将其余回复折叠在查看回复下.(我很难显示两个回复)
- 铁:路由器工作很奇怪 - 将我发送到模板然后返回
- 这很难简明扼要地说.但是我的 if/else javascript 有问题.“如果”在“其他”发生之后不会发生
- 很难理解Javascript中的“可能等于”
- jquery幻灯片向上/向下工作很有趣
- 在Javascript面试中很难
- 很难理解为什么这个函数在 JavaScript 中不起作用
- 很难在ng-repeat中使用JS对象
- 很难计算Javascript的总数
- 使用Dygraph很难指向近距离的时间序列点
- 很难让Javascript在帖子中工作
- 很难让斑马线和表分类器一起工作