·

纯粹的 html、js、css 构建网站的传统做法已经被 template/jsx 替代了,jQuery 时代的做法已经不适合使用了,虽然现在 jQuery 现存市场还很大(from):

不过新项目的采用 jQuery 已经很少了(from):

Vue 和 React 最大的区别就是 template/jsx,proxy/immutable。

template/jsx 本质上都是语法糖,template 的语法糖是 v-ifv-for 这些,而且 Vue 中文文档写的好,对于新手入门友好,但是由于 IDE 的支持、ts 支持问题会导致维护困难,jsx 也是 js 上加的语法糖,但只有一个,无需太多记忆,学起来就像学 js 语法,比模板语法自由许多,react 相比 vue 有许多优点:

  • 完整的 js 功能用来构建视图 UI(Vue template 中无法注入一些复杂逻辑)
  • 直接引用当前 js 作用域变量(jsx 中可以直接使用 import 进来的东西,vue 不行)
  • typescript 支持和 IDE 支持好,开发友好,重构方便(这个说句良心话,ms 当初搞 ts 是不支持 jsx 的,但是社区呼声太大才支持的 tsx,维护也是 ms,vue 就没那么幸运了,只能尤大拉个小团队维护 template 的 ts 支持,所以很难做的完善)
  • 调试方便:jsx 调试可以直接定位到某一行代码错误,Vue 不行,只能自己摸头找找 bug。

性能 Vue 确实好一点,但是这一点用户不会有明显感知(差距太小),反而可维护性和重构升级是一个项目考虑的关键,毕竟大家都不希望以后接手的项目是一坨屎山 joy

Replies
2

有 Vue 基础学 react 大概多久呢? persevere

以前我也是先学的 vue,切换到 react 不到一周吧,概念都是相同的,生命周期、状态管理、异步请求,其他就是 js、css、html 这些了,通用知识