Weex快速上手

Weex 是一套简单易用的跨平台开发方案,能以 web 的开发体验构建高性能、可扩展的 native 应用,为了做到这些,Weex 与 Vue 合作,使用 Vue 作为上层框架,并遵循 W3C 标准实现了统一的 JSEngine 和 DOM API,这样一来,你甚至可以使用其他框架驱动 Weex,打造三端一致的 native 应用。

Vue是什么

Vue.js 是 Evan You 开发的渐进式 JavaScript 框架,在易用性、灵活性和性能等方面都非常优秀。开发者能够通过撰写*.vue文件,基于,,快速构建组件化的 web 应用。

Hello World

尝试 Weex 最简单的方法是使用 Playground App 和在 dotWe 编写一个 Hello World 例子。你不需要考虑安装开发环境或编写 native 代码,只需要做下面两件事:

为你的手机安装 Playground App,当然,Weex 是跨平台的框架,你依然可以使用浏览器进行预览,只是这样你就无法感受到 native 优秀的体验了。

在新标签页中打开 Hello World 例子,点击预览,然后用 Playground 扫码即可。


很简单,我们可以看到语法就是我们熟悉的 Vue。你可以修改这个例子,再次扫码尝试。

搭建开发环境

第一步:安装依赖

Weex 官方提供了 weex-toolkit 的脚手架工具来辅助开发和调试。首先,你需要 Node.js 和 weex-toolkit。

安装 Node.js 方式多种多样,最简单的方式是在Node.js官网 下载可执行程序直接安装即可。

对于 Mac,可以使用 Homebrew 进行安装:

brew install node

安装完成后,使用命令查看

node -v

v6.9.4

npm -v

3.10.10

通常,安装了 Node.js 环境,npm 包管理工具也随之安装了。因此,直接使用 npm 来安装 weex-toolkit。

npm 是一个 JavaScript 包管理工具,它可以让开发者轻松共享和重用代码。Weex 很多依赖来自社区,同样,Weex 也将很多工具发布到社区方便开发者使用。

注意: weex-toolkit 目前仅有最新的 beta 版本开始才支持初始化 Vue 项目,使用前请确认版本是否正确。

npm install -g weex-toolkit@beta

国内开发者可以考虑使用淘宝的 npm 镜像 —— [cnpm](https://npm.taobao.org/) 安装 weex-toolkit

npm install -g cnpm

cnpm install -g weex-toolkit@beta

提示:

如果提示权限错误(permission error),使用sudo关键字进行安装

sudo cnpm install -g weex-toolkit@beta

安装结束后你可以直接使用weex命令验证是否安装成功,它会显示weex命令行工具各参数:

Usage: weex foo/bar/we_file_or_dir_path  [options]

Usage: weex debug [options] [we_file|bundles_dir]

Usage: weex init

选项:

--qr          display QR code for PlaygroundApp                        [布尔]

--smallqr    display small-scale version of QR code for PlaygroundApp,try it

if you use default font in CLI                            [布尔]

-o, --output  transform weex we file to JS Bundle, output path must specified

(single JS bundle file or dir)

[for create sub cmd]it specified we file output path

[默认值: "no JSBundle output"]

--watch      using with -o , watch input path , auto run transform if change

happen

-s, --server  start a http file server, weex .we file will be transforme to JS

bundle on the server , specify local root path using the option

[字符串]

--port        http listening port number ,default is 8081        [默认值: -1]

--wsport      websocket listening port number ,default is 8082    [默认值: -1]

--np          do not open preview browser automatic                    [布尔]

-f, --force  [for create sub cmd]force to replace exsisting file(s)    [布尔]

--help        显示帮助信息                                              [布尔]

-h, --host                                              [默认值: "127.0.0.1"]

weex debug -h for Weex debug help information.

for cmd example & more information please visit

https://www.npmjs.com/package/weex-toolkit

info [object Object]

初始化

然后初始化 Weex 项目:

weex init itxdl-project

执行完命令后,在itxdl-project目录中就创建了一个使用Weex和Vue的模板项目

第三步:开发

之后我们进入项目所在路径,weex-toolkit 已经为我们生成了标准项目结构。

在package.json中,已经配置好了几个常用的 npm script,分别是:

build: 源码打包,生成 JS Bundle

dev: webpack watch 模式,方便开发

serve : 开启静态服务器

debug : 调试模式

我们先通过npm install安装项目依赖。之后运行npm run dev和npm run serve开启watch 模式和静态服务器。

然后我们打开浏览器,进入http://localhost:8080/index.html即可看到 weex h5 页面。

初始化时已经为我们创建了基本的示例,我们可以在src/weex-bootstrap.we中查看。

代码如下所示:

关于 Weex 语法部分,你可以直接参考Vue Guide,这里不再重复介绍。如果您想了解有关技术详情的更多信息,请继续阅读下一节。并且不要忘记在 dotWe 写代码并随时预览。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容

  • 如何搭建本地开发环境进行 Weex 开发。 使用Homebrew 进行安装 node;通常,安装了 Node.js...
    kakukeme阅读 1,379评论 0 50
  • 本文作者 Jinkey(微信公众号 jinkey-love,官网 https://jinkey.ai)原文链接 h...
    JinkeyAI阅读 425,124评论 152 921
  • 2016年4月21日,阿里巴巴在Qcon大会上宣布开源跨平台移动开发工具Weex,Weex能够完美兼顾性能与动态性...
    晴天咚咚阅读 2,856评论 1 15
  • 今天干活干到负能量爆棚,工作繁重,时间要求高,导致一个星期的神经高度紧绷,嗓子发痒,肩膀酸痛,关键是真心觉得现在的...
    Luckymay阅读 319评论 0 0
  • 人长长以为自己长情 以为自己恋旧 呵呵 只是现在过得不好罢了
    励志名句阅读 285评论 0 0