1. 程式人生 > >阿里Weex框架快速體驗與環境搭建

阿里Weex框架快速體驗與環境搭建

本期六篇文章目錄(可點選跳轉)

1. 前言

Weex能夠完美兼顧效能與動態性,讓移動開發者通過簡捷的前端語法寫出Native級別的效能體驗,並支援iOS、安卓、YunOS及Web等多端部署。
對於移動開發者來說,Weex主要解決了頻繁發版和多端研發兩大痛點,同時解決了前端語言效能差和顯示效果受限的問題。開發者可通過Weex官網申請內測。
開發者只需要在自己的APP中嵌入Weex的SDK,就可以通過撰寫HTML/CSS/JavaScript來開發Native級別的Weex介面。Weex介面的生成碼其實就是一段很小的JS,可以像釋出網頁一樣輕鬆部署在服務端,然後在APP中請求執行。

2.環境搭建

1)因為Weex工具鏈使用Node.js構建,在進行後續步驟前,你需要先安裝 Node.js。
第一步:下載安裝檔案
下載地址:官網http://www.nodejs.org/download/
這裡用的版本是(node-v6.2.0-x64.msi)
第二步:下載完成之後,雙擊 node-v6.2.0-x64.msi,開始安裝nodejs,預設是安裝在C:\Program Files\nodejs下面,一路next完成安裝。
第三步:安裝npm相關環境。
在命令列中切換到nodejs目錄
這裡寫圖片描述
鍵入命令:npm install express 回車等待安裝express……..
鍵入命令:npm install jade 回車等待安裝jade…….
鍵入命令:npm install mysql回車等待安裝mysql……..
這裡寫圖片描述

2)在Node.js安裝成功後,你可以執行下面的命令來安裝Weex命令列程式

npm install -g weex-toolkit

如圖所示:
這裡寫圖片描述
在安裝結束後,你能通過在命令列視窗執行 weex 命令來檢查工具是否安裝正確。僅僅輸入weex並敲擊回車後,你應該看到如下內容顯示:
這裡寫圖片描述
(請使用 weex –version 命令檢查你的weex-toolkit版本是否大於 0.1.0)
至此,環境已經全部安裝完畢。

3.weex快速體驗

1)我們先編寫一個列表項,命名tech_list.we檔案( .we 是Weex推薦的字尾名 )

<template>
<div class="container" > <div class="cell"> <image class="thumb" src="http://t.cn/RGE3AJt"></image> <text class="title">JavaScript</text> </div> </div> </template> <style> .cell{margin-top:10 ; margin-left:10 ; flex-direction: row; } .thumb {width: 200; height: 200; } .title {text-align: center ; flex: 1; color: grey; font-size: 50; } </style>

2)在命令列中切換工作目錄到剛才儲存 tech_list.we 所用目錄並輸入如下命令:

weex tech_list.we

如圖所示:
這裡寫圖片描述
成功後,你係統預設瀏覽器的視窗將自動開啟以顯示如下內容。
這裡寫圖片描述

3)現在,讓我們來嘗試使用Weex Native渲染器來渲染這個檔案。開啟終端,切換到儲存tech_list.we檔案的目錄,執行:

weex tech_list.we --qr -h {ip or hostname}

如圖所示:
這裡寫圖片描述
此二維碼用來後面掃描。

4)安裝官方demo:playground.apk
下載apk檔案,Weex Playground
下載安裝後點擊App中的掃碼圖示,然後用你的手機攝像頭掃描終端中的二維碼。一個漂亮的列表將出現在你的手機中。
這裡寫圖片描述

這裡我需要強調,這個列表是完全由native view(不是Webkit)來進行渲染的,相比Webkit渲染的介面,你的App能獲得更快的頁面載入速度和更少的記憶體開銷。

現在你能嘗試變更一些 tech_list.we中的內容,在儲存變更內容之後, Weex Playground 將會立即在介面上反映出這些變化,這個特性常被稱為 Hot-Reload ,希望能幫助你更方便的進行Weex開發。

5)變化佈局
我們更改tech_list.we的內容

<template>
  <div class="container" >
    <div class="cell">
       <image class="thumb" src="http://t.cn/RGE3AJt"></image>  
       <text class="title">helloWorld</text>
    </div>
  </div>
</template>

<style>
  .cell{margin-top:10 ; margin-left:10 ; flex-direction: row; }
  .thumb {width: 200; height: 200; }
  .title {text-align: center ; flex: 1; color: grey; font-size: 50; }  
</style>

在命令列中切換工作目錄到剛才儲存 tech_list.we 所用目錄並輸入如下命令:

weex tech_list.we

奇蹟出現了,不需要重新部署,只要本地調整,app頁面就改變了,更後臺部署一樣。
這裡寫圖片描述

4.其他

之前做了一年基於luajava實現的跨平臺,效能跟安全問題都解決了,後面看了一樣聚划算的luaview,跟他們應該差不多,我的感受是開發效率是個問題,沒有視覺化佈局,不能debug,開發效率低。
其實跟weex一樣,如果有特殊效能要求的地方,就使用原生程式碼寫,然後前端指令碼語言呼叫,思想都是差不多的。

5.一些書籍

歡迎一起交流討論
群號:469890293