相关疑难解决方法(0)

敲除视图模型之间的区别声明为对象文字与函数

在淘汰赛中,我看到View Models声明为:

var viewModel = {
    firstname: ko.observable("Bob")
};

ko.applyBindings(viewModel );
Run Code Online (Sandbox Code Playgroud)

要么:

var viewModel = function() {
    this.firstname= ko.observable("Bob");
};

ko.applyBindings(new viewModel ());
Run Code Online (Sandbox Code Playgroud)

如果有的话,两者之间有什么区别?

我确实在knockoutjs google小组上找到了这个讨论,但它并没有给我一个满意的答案.

如果我想用一些数据初始化模型,我可以看到一个原因,例如:

var viewModel = function(person) {
    this.firstname= ko.observable(person.firstname);
};

var person = ... ;
ko.applyBindings(new viewModel(person));
Run Code Online (Sandbox Code Playgroud)

但如果我不这样做,我选择哪种风格呢?

javascript knockout.js

193
推荐指数
2
解决办法
4万
查看次数

标签 统计

javascript ×1

knockout.js ×1