我在我的应用中使用AngularJS 1.4。我的HTML模板中有一些属性使用逻辑运算符,例如:
<p ng-if="!edit.model && !model.length">...</p>
我的文本编辑器将&&
标记为错误,大概是因为它没有HTML转义。我真的应该改为&&
吗?这不像我使用ambiguous ampersand。
答案 0 :(得分:1)
我应该真的将其更改为
&&
吗?
否。从不。强>
或者是,如果您的优先级是您当前的编辑器语法引擎而不是您的应用程序的功能。
我的文字编辑器标志着&amp;&amp;作为一个错误,大概是因为它没有HTML转义。
因为愚蠢过于保护(通才)HTML Codes。
这是您的有效问题,让我们看一些例子:
这可行就好了:<p>
<input type="checkbox" id="hello" ng-model="hello">
<label for="hello">Say only Hello!</label>
</p>
<p>
<input type="checkbox" id="goodbye" ng-model="goodbye">
<label for="goodbye">Say only Goodbye!</label>
</p>
<h1 ng-show="hello&&!goodbye">Hello!</h1>
<h1 ng-show="!hello&&goodbye">Goodbye!</h1>
见https://plnkr.co/edit/93LAQJJ1bwTNPteLCv5Q?p=preview。
但是,这赢了:[..]
<p>
<input type="checkbox" id="not" ng-model="not">
<label for="not">Say only Not!</label>
</p>
<h1 ng-show="hello&&!not">Hello!</h1>
<h1 ng-show="!hello&¬">Not!</h1>
见https://plnkr.co/edit/HRVigpQCCg1hQCW25Xgk?p=preview。
但是,将:<p>
<input type="checkbox" id="not" ng-model="not">
<label for="not">Say only Not!</label>
</p>
<h1 ng-show="hello && !not">Hello!</h1>
<h1 ng-show="!hello && not">Not!</h1>
见https://plnkr.co/edit/u3uNt9xHMnvtI0HZynlJ?p=preview。
只要您没有放置包含HTML代码的值,就会很好。