ue.js是一个很好的框架!它有一个友好的学习曲线,结合了最好的React的组件方法和Angular的模板。尽管如此,Vue.js仍然有一个限制,它还不能像React的React Native,Vue.js目前还没有稳定、广泛采用的方法来开发原生应用程序。
不过,这肯定会改变!目前有两个框架正在开发,可以打开用Vue.js框架创建本地应用程序之门,我们都很喜欢的:Weex和NativeScript。在本文中,我们将比较这两个框架,并让你感觉到他们很有趣味,至少想去尝试其中一个!
Weex
Weex是一个项目,由中国电子商务巨头阿里巴巴创造。它的口号是“一次编写,到处运行”,这意味着你可以使用完全相同的代码库构建网站(HTML5),Android和iOS的应用。目前有几个Weex的生产项目,在中国可能有数以百万计的用户。对Weex的核心正在积极发展中,每周都会PRs。Weex有一些组件和插件与本地的平台交互,还有一套有点粗糙的工具。
不幸的是,Weex开发商不认为使平台可用,对于开源社区是一个优先选项。确保文档,github等等,有些东西越来越好了,Weex是在Apache孵化器下(ASF)。但是…还没有明确的方法来建立一个从零开始的Weex项目本地代码不会遭到黑客的大量攻击。另外,忘了说英语在使用在官方的gitter通道里(https://gitter.im/weexteam/cn)…
NativeScript
四月,Igor Randjelovic开辟了另外的可能性,使用Vue与NativeScript。Nativescript-Vue(https://github.com/rigor789/nativescript-vue)是一个NativeScript插件,是Vue.js virtual DOM和NativeScript组件之间的桥梁,让你可以用Vue.js构建跨平台的应用程序。虽然这个项目还处于早期阶段,不太适合生产应用程序,但它有很大的潜力,因为它利用了NativeScript框架所有的工具、组件和插件,数量巨大的可用库。通过WebPack,你甚至可以使用.Vue单文件组件(可以看下这个模板https://github.com/tralves/nativescript-vue-webpack-template)。
社区是伟大的,非常好的支持!如果你参加官方的Slack,你会发现很多友善的人愿意帮助,包括NativeScript核心团队的开发者,NativeScript Vue的创造者,和其他参与项目的人。有人想为Nativescript-vue做更多的工作!
利弊综述
总结每个框架的优点和缺点,我认为:
Weex:
-
已经用于生产环境(虽然只在中国);
-
可用于Web、Android和iOS的构建;
-
很好的社区;
-
工具还是有些简陋的;
-
没有明确的路径来知道如何启动一个项目;
NativeScript Vue:
-
很棒的社区!
-
可利用所有NativeScript平台;
-
还没准备好用户生产环境;
-
目前只能用户Android和iOS的构建(尽管有人在Web构建***享代码);
最后的裁决
在开源项目中,社区胜过技术。Weex已经开始有几个月了,并且由一个大公司的支持,但我们还没有看到在社区里有大的进步的东西。另一方面,NativeScript + Vue已经得到越来越多的关注。当然,也有一些粗糙的地方,但是一旦他们清除了问题,我们将有一个坚实的框架来开发本地应用程序使用Vue.js。
我赌NativeScript!
链接
Weex:
官方网站:http://weex.incubator.apache.org/
Weex怎么样:https://hackernoon.com/how-to-create-a-weex-vue2-project-6b94981bee4e
使用Weex来构建的应用清单: https://github.com/tralves/weex-todo-list
NativeScript + Vue.js:
NativeScript Vue:https://github.com/rigor789/nativescript-vue
NativeScript Vue:https://www.nativescript.org/blog/a-new-vue-for-nativescript
NativeScript的slack频道:http://developer.telerik.com/wp-login.php?action=slack-invitation
-
NS + Vue template: https://github.com/tralves/nativescript-vue-template
-
NS + Vue template with webpack (ready for .vue single file components): https://github.com/tralves/nativescript-vue-webpack-template
嗯…你怎么知道这些东西的?
我一直在使用Weex。我所做的一些试验,建立了一个演示程序,演练视频,写文章,提出了Weex的局部事件等。然后,我登上了Nativescript Vue的列车!我也写了一个愚蠢的应用程序,赢了一场比赛,并建立了几个模板,以平滑启动过程。