使用不带require js的映射插件时,只需在模板中按名称绑定变量即可。但是当使用require js时,我必须将它们称为函数。这是正常的吗?
例如: 这里有一个简单的数据绑定="文本:boo"会工作的。
function loadPage() {
require(['jquery', 'knockout', 'mapping'],function($,ko,mapping){
ko.mapping = mapping;
function viewModel() {
this.moo = ko.observable('Hello');
this.boo = ko.observable('World');
}
var vm = new viewModel();
ko.applyBindings(vm);
}
}
但是为此,你需要data-bind =" text:boo()"。没有requirejs的行为与上面相同。我在搞什么?
function loadPage() {
require(['jquery', 'knockout', 'mapping'],function($,ko,mapping){
ko.mapping = mapping;
var data = {moo:'Hello', boo:'World'};
var vm = ko.mapping.fromJS(data);
ko.applyBindings(vm);
}
}