方法1: FAILS
<div>number:</div>
<div data-bind="with: Selected().alarmtime"></div>
结果是:
essage:TypeError:无法读取null的属性'alarmtime'; 绑定值:with:Selected()。alarmtime Error {}
方法2: SUCCEEDS
<!-- ko with: Selected() -->
<div data-bind="text: alarmtime"></div>
<!-- /ko -->
为什么会出现不同的行为?
答案 0 :(得分:0)
在第一种情况下,敲除尝试评估完整表达式 - Selected().alarmtime
,那时Selected()
为空。因此,ko
会尝试在alarmtime
中找到导致错误的null
属性。
在第二种情况下ko
仅评估Selected()
表达式,其等于null
,因此ko
不会渲染div,也不会尝试评估Selected().alarmtime
}。