我想知道這兩行之間的區別。爲什麼在Angular 4中使用撇號變量
<p [myHighlight]="'yellow'">Highlighted in yellow</p>
<p myHighlight="orange">Highlighted in orange</p>
myHighlight
是自定義指令,其中的所有標籤都將被設置爲自定義顏色。 謝謝。
我想知道這兩行之間的區別。爲什麼在Angular 4中使用撇號變量
<p [myHighlight]="'yellow'">Highlighted in yellow</p>
<p myHighlight="orange">Highlighted in orange</p>
myHighlight
是自定義指令,其中的所有標籤都將被設置爲自定義顏色。 謝謝。
閱讀this page on the angular docs它會告訴你有關模板語法的所有信息。
但是,最上面一行將被評估爲一個表達式,下面一行作爲常量進行評估。
從文檔引用。
括號告訴Angular評估模板表達式。如果 省略括號,Angular會將該字符串視爲常量,並且 會使用該字符串初始化目標屬性。它不評估 的字符串!
希望有所幫助。
[]
in [myHighlight]="'yellow'"
表示="..."
中的部分是表達式。沒有''
Angular希望從名稱爲yellow
的標識符中讀取值。如果你想要的是字面值,而不是引用,你需要''
,這與你在TypeScript中需要的一樣。
不使用''
Angular將值解釋爲字符串常量,就像通常使用純HTML + JS中的屬性值完成的那樣。