近年來(lái),伴隨著大前端和移動(dòng)跨平臺(tái)技術(shù)的興起,移動(dòng)應(yīng)用的開(kāi)發(fā)手段越來(lái)越多,常見(jiàn)的移動(dòng)跨平臺(tái)技術(shù)有React Native、WEEX和Flutter等。WEEX是由阿里巴巴研發(fā)的一套移動(dòng)跨平臺(tái)技術(shù)框架,目的是解決移動(dòng)應(yīng)用開(kāi)發(fā)過(guò)程中頻繁發(fā)版和多端研發(fā)的問(wèn)題。本書(shū)是一本系統(tǒng)介紹WEEX跨平臺(tái)應(yīng)用開(kāi)發(fā)的書(shū)籍,涵蓋了WEEX開(kāi)發(fā)的方方面面,主要由基礎(chǔ)知識(shí)、高級(jí)應(yīng)用開(kāi)發(fā)和項(xiàng)目實(shí)戰(zhàn)三部分組成。第一部分重點(diǎn)介紹WEEX開(kāi)發(fā)的基礎(chǔ)知識(shí),后兩部分則重點(diǎn)介紹WEEX開(kāi)發(fā)的進(jìn)階知識(shí)和項(xiàng)目實(shí)戰(zhàn)。本書(shū)是一本W(wǎng)EEX入門(mén)與實(shí)戰(zhàn)系列類(lèi)的書(shū)籍,適合有一定前端開(kāi)發(fā)基礎(chǔ)或者移動(dòng)端開(kāi)發(fā)基礎(chǔ)的讀者閱讀。因此,無(wú)論你是前端開(kāi)發(fā)者,還是移動(dòng)端開(kāi)發(fā)者,都可以通過(guò)對(duì)本書(shū)的學(xué)習(xí)來(lái)獲取掌握移動(dòng)跨平臺(tái)應(yīng)用開(kāi)發(fā)的技能。
向治洪,平安健康資深前端工程師,擅長(zhǎng)移動(dòng)應(yīng)用和前端跨平臺(tái)開(kāi)發(fā),在Android系統(tǒng)開(kāi)發(fā)和后端Web開(kāi)發(fā)方面也有深入研究。長(zhǎng)期活躍于各大技術(shù)論壇,擁有csdn專(zhuān)欄作家、云棲社區(qū)版主和掘金聯(lián)合編輯等稱(chēng)號(hào),發(fā)布的文章涉及前端的方方面面。曾在多家互聯(lián)網(wǎng)公司擔(dān)任技術(shù)經(jīng)理和資深工程師的職位,出版的《React Native移動(dòng)開(kāi)發(fā)實(shí)戰(zhàn)》和《Kotlin入門(mén)與實(shí)戰(zhàn)》深受讀者好評(píng)。
目錄
第1章 WEEX簡(jiǎn)介 1
1.1 WEEX簡(jiǎn)介 1
1.1.1 原生平臺(tái)與Web平臺(tái)的差異 1
1.1.2 設(shè)計(jì)理念 2
1.1.3 WEEX工作原理 3
1.2 移動(dòng)跨平臺(tái)技術(shù)剖析 4
1.2.1 React Native 5
1.2.2 Flutter 6
1.2.3 PWA 8
1.2.4 對(duì)比與分析 8
1.3 本章小結(jié) 9
第2章 WEEX快速入門(mén) 10
2.1 安裝與配置WEEX 10
2.1.1 安裝依賴 10
2.1.2 創(chuàng)建項(xiàng)目 12
2.1.3 開(kāi)發(fā)與運(yùn)行項(xiàng)目 13
2.1.4 集成到iOS 16
2.1.5 集成到Android 20
2.1.6 WEEX語(yǔ)法插件 22
2.2 在WEEX中使用Vue.js 25
2.2.1 與Web平臺(tái)的異同 25
2.2.2 單文件組件 26
2.2.3 WEEX支持的Vue.js功能 27
2.3 WEEX調(diào)試 29
2.3.1 weex-toolkit簡(jiǎn)介 29
2.3.2 weex-devtool遠(yuǎn)程調(diào)試 32
2.3.3 集成weex-devtool到iOS 35
2.3.4 集成weex-devtool到Android 37
2.4 本章小結(jié) 42
第3章 WEEX基礎(chǔ)知識(shí) 43
3.1 基本概念 43
3.1.1 組件 43
3.1.2 模塊 44
3.1.3 適配器 45
3.2 樣式 46
3.2.1 盒模型 46
3.2.2 彈性布局 49
3.2.3 定位屬性 57
3.2.4 2D轉(zhuǎn)換 59
3.2.5 過(guò)渡 60
3.2.6 偽類(lèi) 62
3.2.7 線性漸變 63
3.2.8 文本樣式 66
3.3 事件 66
3.3.1 通用事件 66
3.3.2 事件冒泡 69
3.3.3 手勢(shì) 70
3.4 擴(kuò)展 71
3.4.1 HTML5擴(kuò)展 71
3.4.2 Android擴(kuò)展 73
3.4.3 iOS擴(kuò)展 76
3.4.4 iOS擴(kuò)展兼容Swift 79
3.5 本章小結(jié) 81
第4章 組件與模塊 82
4.1 內(nèi)置組件 82
4.1.1。糳iv>組件 82
4.1.2。約croller>組件 84
4.1.3。紃efresh>組件 85
4.1.4 <loading>組件 86
4.1.5。糽ist>組件 87
4.1.6 <recycle-list>組件 91
4.1.7。紇ideo>組件 95
4.1.8。紈eb>組件 97
4.2 內(nèi)置模塊 100
4.2.1 DOM模塊 100
4.2.2 steam模塊 102
4.2.3 modal模塊 103
4.2.4 animation模塊 105
4.2.5 navigator模塊 107
4.2.6 storage模塊 108
4.3 Weex Ui詳解 110
4.3.1 Weex Ui簡(jiǎn)介 110
4.3.2 <wxc-minibar>組件 111
4.3.3 <wxc-tab-bar>組件 113
4.3.4 <wxc-tab-page>組件 117
4.3.5 <wxc-ep-slider>組件 119
4.3.6。紈xc-slider-bar>組件 121
4.4 本章小結(jié) 123
第5章 Rax框架詳解 124
5.1 Rax簡(jiǎn)介 124
5.2 Rax快速入門(mén) 125
5.2.1 搭建環(huán)境 125
5.2.2 基本概念 127
5.2.3 FlexBox與樣式 128
5.2.4 事件處理 129
5.2.5 網(wǎng)絡(luò)請(qǐng)求 131
5.3 Rax組件 133
5.3.1 <View>組件 133
5.3.2 <Touchable>組件 134
5.3.3 <ListView>組件 136
5.3.4 <TabHeader>組件 139
5.3.5 <Tabbar>組件 143
5.3.6 <Switch>組件 146
5.3.7 <Slider>組件 148
5.4 本章小結(jié) 150
第6章 Vue.js框架詳解 151
6.1 Vue.js簡(jiǎn)介 151
6.2 Vue.js快速入門(mén) 152
6.2.1 搭建環(huán)境 152
6.2.2 Vue.js項(xiàng)目的目錄結(jié)構(gòu) 154
6.2.3 Vue.js實(shí)例 155
6.2.4 模板 156
6.2.5 數(shù)據(jù) 157
6.2.6 方法 158
6.2.7 生命周期 159
6.3 基礎(chǔ)特性 162
6.3.1 數(shù)據(jù)綁定 162
6.3.2 模板渲染 163
6.3.3 事件處理 166
6.4 指令 169
6.4.1 v-bind指令 169
6.4.2 v-model指令 170
6.4.3 v-on指令 172
6.4.4 v-cloak指令 174
6.4.5 v-once指令 174
6.4.6 自定義指令 174
6.5 過(guò)濾器 178
6.5.1 過(guò)濾器注冊(cè) 178
6.5.2 自定義過(guò)濾器 178
6.5.3 過(guò)濾器串聯(lián) 179
6.6 Vue.js組件 180
6.6.1 組件基礎(chǔ) 180
6.6.2 組件擴(kuò)展 181
6.6.3 組件注冊(cè) 181
6.6.4 組件選項(xiàng) 183
6.6.5 組件通信 185
6.6.6 動(dòng)態(tài)組件 187
6.6.7 緩存組件 188
6.6.8 異步組件 189
6.7 vue -router 191
6.7.1 安裝與配置 191
6.7.2 基本用法 192
6.7.3 路由匹配 193
6.7.4 嵌套路由 194
6.7.5 命名路由 196
6.7.6 路由對(duì)象 197
6.7.7 路由屬性與方法 197
6.7.8 路由傳參 199
6.8 本章小結(jié) 200
第7章 BindingX框架 201
7.1 BindingX簡(jiǎn)介 201
7.1.1 基本概念 201
7.1.2 背景 202
7.2 BindingX框架快速上手 203
7.2.1 快速入門(mén) 203
7.2.2 手勢(shì) 204
7.2.3 動(dòng)畫(huà) 208
7.2.4 滾動(dòng) 211
7.2.5 陀螺儀 213
7.3 API 215
7.3.1 事件類(lèi)型 215
7.3.2 表達(dá)式 217
7.3.3 目標(biāo)屬性 217
7.3.4 插值器 218
7.3.5 顏色函數(shù) 218
7.4 本章小結(jié) 219
第8章 WEEX Eros App開(kāi)發(fā)實(shí)戰(zhàn) 220
8.1 WEEX Eros簡(jiǎn)介 220
8.2 快速入門(mén) 220
8.2.1 搭建環(huán)境 221
8.2.2 創(chuàng)建工程 221
8.2.3 運(yùn)行項(xiàng)目 222
8.2.4 Eros示例 225
8.2.5 工程配置 227
8.2.6 開(kāi)發(fā)調(diào)試 231
8.2.7 增量發(fā)布 232
8.3 組件 232
8.3.1 globalEvent 232
8.3.2 Axios 233
8.3.3 Router 236
8.3.4 storage 239
8.3.5 event 242
8.3.6 image 244
8.3.7 notice 245
8.3.8 自定義組件 247
8.4 模塊 248
8.4.1 模塊概念 248
8.4.2 bmEvents 249
8.4.3 bmWebSocket 250
8.4.4 bmBundleUpdate 253
8.5 開(kāi)發(fā)配置 253
8.5.1 Android原生配置 254
8.5.2 Android打包配置 255
8.5.3 iOS原生配置 257
8.5.4 iOS打包配置 258
8.6 插件 260
8.6.1 Android插件化 260
8.6.2 iOS插件化 261
8.6.3 基礎(chǔ)插件 265
8.6.4 微信插件 266
8.6.5 高德插件 269
8.7 熱更新 272
8.7.1 熱更新原理 272
8.7.2 熱更新配置 273
8.7.3 熱更新實(shí)戰(zhàn) 275
8.8 本章小結(jié) 278
第9章 移動(dòng)電商應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn) 279
9.1 項(xiàng)目概述 279
9.2 搭建項(xiàng)目 279
9.2.1 新建項(xiàng)目 279
9.2.2 編寫(xiě)主框架 280
9.2.3 Iconfont 283
9.2.4 自定義選項(xiàng)卡組件 286
9.2.5 路由配置 288
9.2.6 數(shù)據(jù)請(qǐng)求 289
9.3 功能編寫(xiě) 290
9.3.1 首頁(yè)開(kāi)發(fā) 290
9.3.2 廣告彈窗開(kāi)發(fā) 292
9.3.3 商品詳情頁(yè)開(kāi)發(fā) 294
9.3.4 訂單管理頁(yè)開(kāi)發(fā) 296
9.3.5 適配iPhone X 299
9.4 打包與上線 302
9.4.1 更換默認(rèn)配置 302
9.4.2 iOS打包 303
9.4.3 Android打包 305
9.5 本章小結(jié) 307