2016-05-11 7 views
0

私のアプリケーションにはAngularJS 1.4が使用されています。HTML属性のJavaScriptフラグメント:特殊文字

<p ng-if="!edit.model && !model.length">...</p> 

私のテキストエディタは、それがHTMLエスケープはありません、おそらくので、エラーとして&&をマーク:私は、次のような論理演算子を使用して、私のHTMLテンプレート内のいくつかの属性があります。実際に&amp;&amp;に変更する必要がありますか?私はambiguous ampersandを使っているのとは違う。

+0

ng-ifで&&を使用しても問題はありません。 ng-ifは単一のブール評価で動作しますか?あなたはAngularが蒸散していると確信していますか? – dYale

+1

あなたのコードよりもテキストエディタの方が問題が多い – winhowes

+0

このような質問では、使用している_which_エディタをお勧めします。 –

答えて

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">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コードを含む値を入力しない限り、となります。

+0

ありがとう、私は裸の '&'を持つのが有効なHTMLだと思います。エディタに対して[バグレポート](https://github.com/atom/language-html/issues/116)を提出しました。 – z0r