绑定以查看模型属性而不是全局变量
如果我有以下代码,其中淘汰赛将文本区域绑定到全局对象的文本,而不是视图模型上的文本。在尝试全局属性之前,是否可以告诉淘汰赛使用 viewModel 的任何本地属性?
我知道我可以做 viewModel.Text
,但我不想这样做。此外,我可能想对 myotherviewModel
使用相同的代码而不更改标记。
如果我想调用全局函数,我更愿意使用 window.Text
。
<textarea data-bind="value:Text"></textarea>
JS:
var viewModel={
Text : 'my text'
};
ko.applyBindings(viewModel)
If I have the following code, where knockout binds the textarea to Text the global object, instead of Text on the viewModel. Can knockout be told to use any local property of the viewModel before trying global ones?
I know I can do viewModel.Text
, but I prefer not to. Besides, I might want to use the same code for myotherviewModel
without changing the markup.
I'd prefer to do window.Text
if I want to call the global function.
<textarea data-bind="value:Text"></textarea>
JS:
var viewModel={
Text : 'my text'
};
ko.applyBindings(viewModel)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你能澄清一下你的场景吗? KO 在评估绑定时执行
with
,因此 viewModel 变量会在全局变量之前找到,如下例所示: http://jsfiddle.net/rniemeyer/Um6Y6/ – RP Niemeyer 9 月 15 日 12:49Can you clarify your scenario? KO does a
with
when evaluating bindings, so the viewModel variables would be found before a global variable like in this sample: http://jsfiddle.net/rniemeyer/Um6Y6/ – RP Niemeyer Sep 15 at 12:49