美文网首页Weex开发
Weex iOS 端集成的一些感想

Weex iOS 端集成的一些感想

作者: voidxin | 来源:发表于2016-09-15 00:30 被阅读390次

身边一直充斥着Weex的消息(从内测到现在),几乎每一个移动端的人都在我面前提过它。我隐约的知道它其实是和ReactNative类似的东西。因为年初也玩了会儿RN,弄环境弄了挺久了,然后因为教程少,写了一个demo之后就没怎么深入学习了。
weex存在的意义就是用来跨平台的(如果不是跨平台我又何苦用蹩脚的标签来写iOS界面呢,抱歉我说的是我web知识太匮乏而蹩脚),一套代码,三端共用(iOS,安卓,web),有效的节省人力物力财力,对于初创公司来说简直是完美的解决方案。
其实现在想想也是挺恐怖的一件事,就目前我公司的人员分布来看:安卓三个,iOS三个,H5三个,总共是九个前端。照目前的发展趋势,不久的将来,weex工程师将彻底改变这种格局(也许以后公司的项目只要招两个weex工程师就可以了,安卓iOS以及Web可以统统滚蛋了。。。),跨平台的时代来临。
未来,等跨平台的方案和技术成熟(一套代码一统前端的时候),swift或OC还有存在的必要吗?(也许我片面了或局限性了,swift或OC不仅仅用来写应用).
当然,从目前weex来看,依旧有着平台差异性,要实现完美的跨平台三端共用需要开发者了解或精通iOS和安卓以及Web的知识。所以以后势必对weex开发者的要求也会越来越高,必须精通iOS安卓以及Web。

也许这就是跨平台即将带给我们的惊喜。
呵呵,以上只是我个人的猜想和意淫。所谓盲人摸象,今天是我第一次体验weex,也许我的理解会不够全面。
不知何时在知乎上看到有人说Weex纯粹是阿里KPI的产物,我不知道这是真的还是假的(以下引用知乎网友的话)

QQ20160915-0@2x.png

确实,Weex和RN真是太像了。站在巨人的肩膀上难免会有重复造轮子的嫌疑。
但实话实说,就今天一天的体验来看,Weex比RN好上手多了,搭环境几分钟搞定(像当初搭RN的环境,简直不堪回首啊),给我的感觉就像Oracle和MySql的区别似得,一个重量级一个轻量级。
接下来看看weex的参数:
weex使用的是V8引擎,而ReactNative使用的是JSCore
weex基于vue.js(2W+star),reactnative使用的是React(4W+star)

集成到iOS项目中参考Weex文档:https://open.taobao.com/doc2/detail?spm=a219a.7629140.0.0.tFddsV&&docType=1&articleId=104829

集成demo可以看看这里:https://github.com/voidxin/WeexDemo_iOS

特别提醒:
如果集成后运行发现.js文件并没有生效,请记得加入:

QQ20160915-1@2x.png

接下来的这段时间里,我将尝试在我的项目中使用它,希望能和大家共同学习共同进步。



2016年11月15日:
PS:今天升级Weex 0.8.0,发现并不用像以上步骤那么复杂,可参考这篇:https://github.com/dengjunwen/weexPageDemo
或看看这个demo:https://github.com/voidxin/WeexProjectWithCocoapods

----------------------------分割线------------------------

2016年11月16日:
PS:又试了一下,其实如果项目使用了CocoaPods的话直接在Podfile中加入pod 'WeexSDK', '0.8.0',然后在项目中加入bundlejs文件夹即可(其他的前文中所说的都可以删了)
github上有提到:

QQ20161116-0.png

好吧,一段时间没用,发现可以这么省事了。可喜可贺、Weex会发展的越来越好的。


ps:2016年11月24日
由于之前一直是在公司电脑上开发weex,今晚在自己的Mac pro上鼓捣了一下,发现使用cocoapods引入WeexSDK 0.8.0时出错

Analyzing dependencies
[!] Unable to satisfy the following requirements:

- `WeexSDK (~> 0.8.0)` required by `Podfile`

顿时觉得很奇怪,因为在公司电脑是一直好好的,我查看了下我cocoapods的版本是1.1,是在找不到原因了,我就决定吧coco卸了重装(一下来自百度网友提供)

$ sudo gem uninstall cocoapods
查看本地安装过的cocopods相关东西
$ gem list --local | grep cocoapods
显示如下:
cocoapods (1.0.1)
cocoapods-core (1.0.1)
cocoapods-deintegrate (1.0.1)
cocoapods-downloader (1.1.1)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.0.0)
cocoapods-try (1.1.0)
然后使用命令逐个删除
$ sudo gem uninstall cocoapods-core
$ sudo gem uninstall cocoapods-deintegrate
....
查询:$ gem sources -l 可以查看当前是什么连接,然后替换方式如下:$ gem source -r https://rubygems.org/$ gem source -a https://ruby.taobao.org/ 要想验证是否替换成功了,可以执行:$ gem sources -l  
成功显示 
*** CURRENT SOURCES ***
https://ruby.taobao.org/
最后:
$ sudo gem install cocoapods  
$ pod setup 

pod setup 之后要等个十分钟左右,就装好了,再pod install --verbose --no-repo-update,发现没报错误了。由此推断是cocoapods的问题。

相关文章

  • Weex iOS 端集成的一些感想

    身边一直充斥着Weex的消息(从内测到现在),几乎每一个移动端的人都在我面前提过它。我隐约的知道它其实是和Reac...

  • Swift 中的 weex

    weex ios 集成参阅:Weex学习与实践:iOS原理篇 swift集成weex 首先将weexsdk集成到项...

  • WEEX快速入门

    weex ios 集成WEEX 是阿里推送的一款基于Node.js,轻量级的移动端跨平台动态性技术解决方案,用于构...

  • [个人记录]Weex入坑

    Weex入门 官方文档 文档iOS集成 开发环境配置 安装node 安装weex开发工具 验证 weex-tool...

  • iOS集成Weex最全面的基础集成(OC)

    iOS 集成Weex入门教程 前言 自Weex发布伊始, 其口号 "Write Once, Run Everywh...

  • weex多页面支持

    在iOS集成weexsdk里面,我们再不同的地方跳转不同的weex界面,则需要不同的index.js weex c...

  • iOS-Weex-navigator组件 本地页面跳转整理

    第一步:weex端js文件platDifferent.js 第二步:weex端跳转方法 第三步:iOS端 导入bu...

  • Weex iOS集成

    背景 Weex是什么?提出这个问题之前我们先看看weex不是什么,根据文章: 对无线电商动态化方案的思考(三) ·...

  • weex集成iOS

    前言 由于项目的需要,最近接触了一下weex开发,本人刚入门不久,由于weex官方文档的坑太多.....这里主要介...

  • Weex Inspector 使用(二)

    前端weex-debug页面过程,需要结合移动端(Android 或者 IOS )端改造,通过websocket ...

网友评论

  • voidxin:ps:更新weex-toolkit可能会遇到问题,首先查看node的版本,如果版本太低可能会安装失败。这是需要卸载掉node,然后安装指定版本(参考这篇文字http://www.jianshu.com/p/a6044bd2ad35),安装完成后运行npm install -g weex-toolkit即可完美搭建好环境

本文标题:Weex iOS 端集成的一些感想

本文链接:https://www.haomeiwen.com/subject/lqqbettx.html