用Vue.js开发原生应用选择Weex还是NativeScript?

简介: Vue.js是一个很好的框架!它有一个友好的学习曲线,结合了最好的React的组件方法和Angular的模板。尽管如此,Vue.js仍然有一个限制,它还不能像React的React Native,Vue.js目前还没有稳定、广泛采用的方法来开发原生应用程序。
Vue.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:
  1. 已经用于生产环境(虽然只在中国);
  2. 可用于Web、Android和iOS的构建;
  3. 很好的社区;
  4. 工具还是有些简陋的;
  5. 没有明确的路径来知道如何启动一个项目;
  • NativeScript Vue:
  1. 很棒的社区!
  2. 可利用所有NativeScript平台;
  3. 还没准备好用户生产环境;
  4. 目前只能用户Android和iOS的构建(尽管有人在Web构建中共享代码);

最后的裁决

在开源项目中,社区胜过技术。Weex已经开始有几个月了,并且由一个大公司的支持,但我们还没有看到在社区里有大的进步的东西。另一方面,NativeScript + Vue已经得到越来越多的关注。当然,也有一些粗糙的地方,但是一旦他们清除了问题,我们将有一个坚实的框架来开发本地应用程序使用Vue.js。

我赌NativeScript!

链接

Weex

  1. 官方网站:http://weex.incubator.apache.org/
  2. Weex怎么样:https://hackernoon.com/how-to-create-a-weex-vue2-project-6b94981bee4e
  3. 使用Weex来构建的应用清单: https://github.com/tralves/weex-todo-list

NativeScript + Vue.js

  1. NativeScript Vue:https://github.com/rigor789/nativescript-vue
  2. NativeScript Vue:https://www.nativescript.org/blog/a-new-vue-for-nativescript
  3. NativeScript的slack频道:http://developer.telerik.com/wp-login.php?action=slack-invitation
  4. NS + Vue template: https://github.com/tralves/nativescript-vue-template
  5. NS + Vue template with webpack (ready for .vue single file components): https://github.com/tralves/nativescript-vue-webpack-template

嗯…你怎么知道这些东西的?

我一直在使用Weex。我所做的一些试验,建立了一个演示程序,演练视频,写文章,提出了Weex的局部事件等。然后,我登上了Nativescript Vue的列车!我也写了一个愚蠢的应用程序,赢了一场比赛,并建立了几个模板,以平滑启动过程。

原文:https://www.toutiao.com/i6508504073317122567/

分享一个 Vue.js 2 的全家桶系列教程:

1.vue.js 2 入门与提高: http://xc.hubwiz.com/course/vue.js

2.vuex 2 入门与提高: http://xc.hubwiz.com/course/vuex

3.vue-router 2 入门与提高: http://xc.hubwiz.com/course/vuerouter

4.vue.js 2 + webpack 工程化实践: http://xc.hubwiz.com/course/vuegch

相关文章
|
JSON 自然语言处理 前端开发
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
793 72
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
|
缓存 前端开发 大数据
虚拟列表在Vue3中的具体应用场景有哪些?
虚拟列表在 Vue3 中通过仅渲染可视区域内容,显著提升大数据列表性能,适用于 ERP 表格、聊天界面、社交媒体、阅读器、日历及树形结构等场景,结合 `vue-virtual-scroller` 等工具可实现高效滚动与交互体验。
1125 1
|
JavaScript API 开发者
Vue框架中常见指令的应用概述。
通过以上的详细解析,你应该已经初窥Vue.js的指令的威力了。它们是Vue声明式编程模型的核心之一,无论是构建简单的静态网站还是复杂的单页面应用,你都会经常用到。记住,尽管Vue提供了大量预定义的指令,你还可以创建自定义指令以满足特定的需求。为你的Vue应用程序加上这些功能增强器,让编码变得更轻松、更愉快吧!
238 1
|
敏捷开发 人工智能 JavaScript
Figma-Low-Code:快速将Figma设计转换为Vue.js应用,支持低代码渲染、数据绑定
Figma-Low-Code 是一个开源项目,能够直接将 Figma 设计转换为 Vue.js 应用程序,减少设计师与开发者之间的交接时间,支持低代码渲染和数据绑定。
1741 3
Figma-Low-Code:快速将Figma设计转换为Vue.js应用,支持低代码渲染、数据绑定
|
缓存 NoSQL JavaScript
Vue.js应用结合Redis数据库:实践与优化
将Vue.js应用与Redis结合,可以实现高效的数据管理和快速响应的用户体验。通过合理的实践步骤和优化策略,可以充分发挥两者的优势,提高应用的性能和可靠性。希望本文能为您在实际开发中提供有价值的参考。
504 11
|
JavaScript 前端开发 测试技术
盘点原生JavaScript中直接触发事件的方式
本文全面探讨了原生JavaScript中触发事件的多种方式,包括`dispatchEvent`、`Event`构造函数、`CustomEvent`构造器、直接调用事件处理器以及过时的`createEvent`和`initEvent`方法。通过技术案例分析,如模拟点击事件、派发自定义数据加载事件和实现提示框系统,帮助开发者掌握这些方法在实际开发中的应用,提升灵活性与兼容性。
617 3
|
JavaScript 前端开发
【Vue.js】监听器功能(EventListener)的实际应用【合集】
而此次问题的核心就在于,Vue实例化的时机过早,在其所依赖的DOM结构尚未完整构建完成时就已启动挂载流程,从而导致无法找到对应的DOM元素,最终致使计算器功能出现异常,输出框错误地显示“{{current}}”,并且按钮的交互功能也完全丧失响应。为了让代码结构更为清晰,便于后续的维护与管理工作,我打算把HTML文件中标签内的JavaScript代码迁移到外部的JS文件里,随后在HTML文件中对其进行引用。
327 8
|
存储 设计模式 JavaScript
Vue 组件化开发:构建高质量应用的核心
本文深入探讨了 Vue.js 组件化开发的核心概念与最佳实践。
1236 1