前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Weex一瞥笔记】

【Weex一瞥笔记】

作者头像
IT晴天
发布2018-08-20 10:44:02
2.2K0
发布2018-08-20 10:44:02
举报
文章被收录于专栏:ionic3+

对ionic比较熟悉了,开始围观下其它框架,以比较下各自的优缺点,这次先来的是Weex。

环境搭建

参考官网使用即可:

  • 安装node,使用 Homebrew 进行安装
代码语言:javascript
复制
brew install node
代码语言:javascript
复制
sudo npm install -g weex-toolkit

如果提示.xtoolkit的权限问题,则执行下述命令后再次安装:

代码语言:javascript
复制
mkdir ~/.xtoolkit&&chmod 777 ~/.xtoolkit

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

weex命令行

环境就这样搭建起来了,看上去还是挺简单的。其中initcreate命令需要注意一下,常规混合式应用使用create创建weexpack项目。当然weexpack项目也可以如下直接装weexpack的CLI,通过该CLI构建及维护项目,只是weex-toolkit已经集成weexpack了,所以也不是必要。

代码语言:javascript
复制
sudo npm install -g weexpack

创建HelloWorld项目

代码语言:javascript
复制
weex create helloWorld && cd helloWorld
代码语言:javascript
复制
npm install
1. 网页测试

运行命令即可:

代码语言:javascript
复制
weex run web

或者npm命令运行:

代码语言:javascript
复制
npm run serve
2. 添加android平台
代码语言:javascript
复制
weex platform add android

一直等待下载安装完成,就会发现platform目录下多了个android的项目目录,然后执行:

代码语言:javascript
复制
weex run android

然后可能会报如下错误:

最终显示为: “BUILD SUCCESSFUL Total time: 10.355 secs => Install app ... adb: failed to stat app/build/outputs/apk/playground.apk: No such file or direct ory”

我们打开platform/android下的app/build/outputs/apk/,发现文件名为weex-app.apk,而不是playground.apk,所以找不到。怎么回事?

我们尝试vscode打开~/.xtoolkit目录,以关键字playground.apk搜索其下的node_modules文件夹,搜索结果如图:

image.png

What?观察发现,都是在weexpack里面的,而且居然写死了名字!也就是说修改配置文件,这里都不会动态变化,同时用Android Studio打开,包名也是固定死是:com.weex.app

我猜这是weexpack的bug吧?应该不会一直存在。根据这个猜测,就临时性的把playground.apk全部替换为weex-app.apk

然后再次执行:

代码语言:javascript
复制
weex run android

会提示没有发现android设备:

Error: No android devices found.

插入android手机或者启动AVD,并再次执行命令,此时应用顺利运行:

image.png

当然也可以用Android Studio来打开运行也是可以的。

简单比较

1. 目录结构

首先比较下weex和ionic的目录,两者还是有点像的,只是weex把ionic隐藏在node_modules里面的wabpack配置开放出来了,这样配置起来就灵活了一些。

weex

ionic

weex

ionic

2. UI

weex好像自身不带UI框架,但是可以很简单地集成weex-ui,而ionic自带UI,两者打个平手吧。此外weex基于vue2+,ionic基于angular2+,都是比较热门的框架,所以组件这方面两者都不用愁。

3. 页面展示

weex有单页和多页面方式,直观就是一个webview显示所有页面,另一个是多个webview各显示一个页面,而ionic只有单webview显示,所以从某种情况来说,多webview时,weex页面切换应该比ionic流畅。

4. 原生支持

可能刚接触不深,weex不建议但可以支持cordova,而且可以较方便集成原生第三方插件。反之,ionic只能支持cordova。只不过若都以cordova方式来开发的话,weex自身html方面的优化应该没有ionic那么好。

因为如其名,匆忙一瞥,对weex了解不深,可能有写错的,欢迎指正。时间不早了,暂时写到这里,到时再补充吧。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.01.10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 环境搭建
  • 创建HelloWorld项目
    • 1. 网页测试
      • 2. 添加android平台
      • 简单比较
        • 1. 目录结构
          • 2. UI
            • 3. 页面展示
              • 4. 原生支持
              相关产品与服务
              命令行工具
              腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档