我已阅读了大量文章,解释了@
,=
和&
之间的区别。我见过很多人在代码中使用=?
。这是什么意思?
不幸的是,我似乎无法在Google或SO上搜索答案,因为搜索引擎会忽略特殊字符。
答案 0 :(得分:20)
?
使该属性可选。否则,您将获得NON_ASSIGNABLE_MODEL_EXPRESSION
,其中Angular正在寻找一个不存在的属性。
来自文档:
如果父作用域属性不存在,则会抛出NON_ASSIGNABLE_MODEL_EXPRESSION异常。你可以使用=?避免这种行为?或=?attr以便将属性标记为可选。
https://docs.angularjs.org/api/ng/service/ $编译#-scope -