## 簡單的表達式
**運算表達式**
```
<h1>{{ 1+1 }}</h1>
// 2
```
**字符串表達式**
```
<p>{{ '字符串表達式' }}</p>
// 字符串表達式
```
**對象表達式**
```
<div ng-init="person={name:'angular'}">
<p>{{ person.name }}</p>
</div>
// angular
```
**數組**
```
<div ng-init="arr=[1, 'a']">
<p>arr[1]</p>
</div>
// a
```
其實,雙花括號是指令"`ng-bind`"的縮寫形式。
```
<div ng-init="arr=[1, 'a']">
<p>arr[1]</p>
</div>
```
等價于:
```
<div ng-init="arr=[1, 'a']">
<p><span ng-bind="arr[1]"></span></p>
</div>
```
有一點要特別注意:HTML加載含有`{{ }}`語法的元素后并不會立刻渲染它們,這也是因此而導致未渲染內容閃爍(Flash of Unrendered Content, FOUC)。但是使用`ng-bind`可以避免這個問題,因為內容會被當做子文本節點渲染到含有`ng-bind`指令的元素內。
當然,還有另一種處理閃爍問題,那就是使用另一個指令:`ng-cloak`
當一個元素中含有此指令時,只有AngularJS模板已經完全編譯,才會顯示該元素。否則,顯示元素的原始形式和模板代碼。
```
<div class="ng-cloak">{{1+2+3}}</div>
```
- 前言
- 第一章:AngularJS簡介
- 第二章:模塊
- 模塊的使用
- AngularJS 生命周期
- 第三章:控制器
- 第四章:作用域
- 作用域解析
- $watch和$apply
- $scope的生命周期
- 第五章:過濾器
- 內置的過濾器
- 自定義過濾器
- 第六章:表達式
- 簡單的表達式
- 手動解析表達式
- 插值字符串
- 第七章:指令
- 內置指令
- 自定義指令
- 第八章:組件
- 組件的使用
- 組件的生命周期
- 第九章:模板
- 第十章:依賴注入
- 第十一章:表單
- 表單驗證
- ngMessages
- 第十二章:MVC模式
- 第十三章:Service服務
- 內置的服務
- 自定義服務
- 第十四章:與服務端交互
- 簡單的交互
- 跨域請求
- Angular緩存
- 強大的promise
- 第十五章:路由
- 模板
- 路由使用
- 路由模式
- 路由事件
- $location
- ui.router
- 第十六章:動畫
- 入門級動畫
- 自定義動畫
- $animate API
- $animateCss
- 第十七章:事件
- 第十八章:angular.element
- 第十九章:全局API
- 第二十章:開發技巧及注意點
- AngularJS和IE
- 第二十一章:為Angular2留坑
- 第二十二章:Angular2 簡介
- 第二十三章:Angular2 開發環境搭建
- 第二十四章:Angular2 TypeScript
- 第二十五章:Angular2 模塊(module)
- 模塊的元數據
- 特性模塊
- 第二十六章:Angular2 組件(component)
- 組件的元數據
- 組件的樣式
- 組件之間的通信
- 生命周期
- DOM操作
- 第二十七章:Angular2 裝飾器和元數據
- 元數據
- 裝飾器
- 第二十八章:Angular2 表單(form)
- 模板驅動的表單
- 模型驅動的表單
- 自定義驗證器
- 第二十九章:Angular2 事件(event)
- 第三十章:Angular2 模板(template)
- 第三十一章:Angular2 指令(directive)
- 常用內置指令
- 結構型指令
- 屬性型指令
- 第三十二章:Angular2 數據綁定(data binding)
- 第三十三章:Angular2 依賴注入(injection)
- 第三十四章:Angular2 服務(service)
- 第三十五章:Angular2 路由(route)
- 路由器部件
- 第三十六章:Angular2 HTTP通信
- 第三十七章:Angular2 管道(pipe)
- 內置管道
- 自定義管道
- 第三十八章:Angular2 動畫(animate)
- 動畫的實現
- 路由動畫
- 第三十九章:案例實戰
- 附錄:源碼下載
- 附錄:問題及解決方法