本篇只要介紹angular表示式:
在之前的例子中,我們多半是直接把資料作為angular識別符號的值,但其實可以使用表示式來做更多的事情:
比如:
{{number}}
也可以是: {{number+10}} (將資料進行簡單的運算)
也可以是: {{someFun()/10}} (呼叫方法得到結果,同時經過簡單運算)
又比如:
ng-class={hight: ifHigh}
也可以是: {hight: $index%4 >= compute($index)} (呼叫方法,簡單運算,傳入引數)
以上這些僅僅是舉例,表示式雖然方便,但實際中應該儘量把帶有邏輯的運算放入控制器中,而不是在ui中進行.
表示式是用angular自定義的解析方式計算的,不是javascript的eval(),因此是有限的.只限用於一些基本,簡單的操作,比如:
計算(+,-,*,/%)
比較(==,!=,<,>,>=,<=)
布林邏輯(&&,||,!)
陣列和物件([],{})
呼叫方法,傳入引數(fun(i))
不能夠使用:
++,--,if,else,throw,for,while,...
表示式最大的有點在於,能夠相容undefined和null,不會報錯,而是簡單的不渲染任何內容.而一旦它被賦值了,就會立刻顯示正確的內容