"一提到重写,就想到 Angular 2.0,但好在大部分兼容。 下文转自 [链接] Vue.js的团队最近[链接]了v2.0版本,该版本被描述为是对框架的一次“完全改写”。 Vue创建者[链接]称Vue由“一个核心视图层、伴随工具以及支持库”所 ...."

写到一定的时候都会推翻重写么?

一提到重写,就想到 Angular 2.0,但好在大部分兼容。

下文转自 http://www.infoq.com/cn/news/2016/05/Vuejs-2


Vue.js的团队最近发布了v2.0版本,该版本被描述为是对框架的一次“完全改写”。

Vue创建者Evan You称Vue由“一个核心视图层、伴随工具以及支持库”所构成,这次发布的2.0版本更快速更精简。

“渲染层现在基于一个轻量级的 Virtual-DOM 实现,在大多数场景下初试化渲染速度和内存消耗都提升了 2~4 倍。”You提到。

此外,开发者可以将template-to-virtual-DOM编译器和运行时分开,允许预编译模板,发布应用时只需要运行时间。Vue运行时代码min+gzip后小于12kb,而React 15 min+gzip后需要44kb。

You说Vue同时提供“一些针对template-to-virtual-DOM编译阶段的优化”,包括在初始渲染之后“检查那些没变的静态类名和属性”。

宣布Vue.js 2.0发布的官方博文中,You提到尽管2.0版本是一次完全改写,但是“除了一些有计划的弃用,API和1.0版本在很大程度上兼容”。其中最显著的的是对过滤系统的变更。

从2.0版本之后, 过滤器仅可以在{{}}标签中使用,You解释说团队发现含有指令的过滤器,包括v-model和v-on“导致了更多的复杂性,而不是方便性”。

此外,Vue 2.0将不提供任何内置的过滤器,推荐开发者使用单独的库,例如moment.js来格式化日期,accounting.js来格式化货币。对过滤器的决定性改变是对其语法的改变,使其与函数调用{{ date | formatDate('YY-MM-DD') }}内联。

Vue 2.0目前是公共预览版,预计在六月会发布Beta版本,预览版收到的反馈基本都是积极的。

系统分析师Victor Bastos评论说“他对过滤器弃用感到很失望”,他认为过滤器是“Vue中他最喜欢的功能”之一。并不是所有人都同意Bastos的观点。教育工作者Chris Fritz回复道“我个人支持去除过滤器,它们只是JavaScript函数似,但它们使用了一种特殊的管道语法,好像在变魔术一样。对我个人而言,这是对库初学者的另一道障碍。”

Vue.js是基于MIT许可协议的开源项目。InfoQ的读者如果想对项目作出贡献必须先阅读贡献指南

查看英文原文:Rewritten Framework for Vue.js 2.0 Release

0   1   0   0   0  
26 回帖  
  • crick77 • 8 个月前

    我觉得需要吧 随着发展 定位都不同了, 当初的设计 和 修修补补太多 阻碍了进步 只能推翻

    0   0   0  
  • Vanessa • 8 个月前

    @crick77 要是全职写 B3log 系列的话,估计也会推翻了重来的。

    0   0   0  
  • R • 8 个月前

    重写啥?

    0   0   0  
  • crick77 • 8 个月前

    @Vanessa 也是自身能力提高了 看之前学的代码就和笑话一样业余 所以总是想推翻

    1   0   0  
  • pianopaper • 8 个月前

    @Vanessa 写到一定时候是会推翻重写的

    0   0   0  
  • mainlove • 8 个月前

    @Vanessa 好啊 重新写 来来来

    0   0   0  
  • Vanessa • 8 个月前

    @mainlove 我还在上班呀

    0   0   0  
  • Vanessa • 8 个月前

    @R 把代码删了,重新来过。

    0   0   0  
  • Vanessa • 8 个月前

    @crick77 现在完全没精力呀。自从做了 PM,发现花费太多精力在公司上了。还是开发好呀,效率高点,可以做很多自己的事情。。。

    0   0   0  
  • R • 8 个月前

    @Vanessa 做项目很累的,还是开发舒服

    1   0   0  
  • R • 8 个月前

    @Vanessa 我想知道的是你想重写啥项目,哈哈

    0   0   0  
  • Vanessa • 8 个月前

    @R Solo

    0   0   0  
  • Vanessa • 8 个月前

    @R 尤其是 Solo 的后台。

    0   0   0  
  • Vanessa • 8 个月前

    @R 所以我现在正在努力的培养开发,教前端使用 Linux,配置 NGINX(虽然我也很菜,但是基本的开发环境我就不用再操心了,哇咔咔咔)。

    0   0   0  
  • R • 8 个月前

    @Vanessa 你原来不是坐开发的么。。。

    0   0   0  
  • Vanessa • 8 个月前

    @R 嗯,前端开发

    0   0   0  
  • R • 8 个月前

    @Vanessa 怎么做项目去了。。。如果是部门领导,或能提高收入还可以,否则还不如做前端。。。

    0   0   0  
  • Vanessa • 8 个月前

    @R 说的很有道理,我应该申请回去做前端。

    0   0   0  
  • R • 8 个月前

    @Vanessa 我建议还是做前端,要往自己长处发展,否则以后很难提高收入找工作。

    0   0   0  
  • R • 8 个月前

    @Vanessa 忘记了,你是大牛,做啥问题都不大,哈哈~ 差点把你当小姑凉了。。。

    0   0   0  
  • mainlove • 8 个月前

    @Vanessa 什么时候不上

    0   0   0  
  • Vanessa • 8 个月前

    @R 等手头空闲下来还是要把前端抓起来的。我现在在看 PMBOK,我觉得你才是大牛,每每听到D给我说你给他啥啥啥建议的时候,我都觉得你用户体验上研究的很棒。

    0   0   0  
  • Vanessa • 8 个月前

    @mainlove 等 B3log 成功了

    0   0   0  
  • R • 8 个月前

    @Vanessa 嗯加油!

    0   0   0  
  • wizardforcel • 8 个月前

    此外,Vue 2.0将不提供任何内置的过滤器,推荐开发者使用单独的库,例如moment.js来格式化日期,accounting.js来格式化货币。对过滤器的决定性改变是对其语法的改变,使其与函数调用{{ date | formatDate(‘YY-MM-DD’) }}内联。

    这不就是模板引擎的外部注入函数嘛。

    然后我看vue想把react的Virtual-DOM也给整合进来?

    0   0   0  
  • DevAPI • 8 个月前

    我经手的项目,经常都有推翻重构的过程。

    • 有时候是为了重新解构项目、整理代码。
    • 有时候是为了更好的实现。
    0   0   0