FAQ

哇,非常长的一页!是否意味着 Vue 2.0 已经完全不同了呢,是否需要从头学起呢,Vue 1.0 的项目是不是没法迁移了?

非常开心地告诉你,并不是!几乎 90% 的 API 和核心概念都没有变。因为本节包含了很多详尽的阐述以及许多迁移的例子,所以显得有点长。不用担心,你不必从头到尾把本节读一遍!

我该从哪里开始项目迁移呢?

  • 首先,在当前项目下运行迁移工具。我们非常谨慎地把高级 Vue 升级过程简化为使用一个简单的命令行工具。当工具识别出旧有的特性后,就会告知你并给出建议,同时附上关于详细信息的链接。

  • 然后,浏览本页面的侧边栏列出的内容。如果发现有的标题对你的项目有影响,但是迁移工具没有给出提示,请检查自己的项目。

  • 如果你的项目有测试代码,运行并查看仍然失败的地方。如果没有测试代码,在浏览器中打开你的程序,通过导航环顾并留意那些报错或警告信息。

  • 现在,你的应用程序应该已彻底完成迁移。如果你渴望了解更多,可以阅读本页面剩余部分 - 或者从介绍部分,从头开始深入新的文档和改进过的指南。由于你已经熟悉一些核心概念,所以许多部分已经被删除掉。

将 Vue 1.x 版本的应用程序迁移到 2.0 要花多长时间?

这取决于几个因素:

  • 取决于你应用程序的规模 (中小型的基本上一天内就可以搞定)。

  • 取决于你分心和开始 2.0 最酷的新功能的次数。😉 无法判断时间,我们构建 2.0 应用的时候也经常发生这种事!

  • 取决于你使用了哪些旧有的特性。大部分可以通过查找和替换 (find-and-replace) 来实现升级,但有一些可能还是要花点时间。如果你没有遵循最佳实践,Vue 2.0 会尽力强迫你去遵循。这有利于项目的长期运行,但也可能意味着重大重构 (尽管有些需要重构的部分可能已经过时)。

如果我升级到到 Vue 2 ,我还必须同时升级 Vuex 和 Vue Router?

只有 Vue Router 2 与 Vue 2 保持兼容,所以 Vue Router 是需要升级的,你必须遵循 Vue Router 迁移方式来处理。幸运的是,大多数应用没有很多 router 相关代码,所以迁移可能不会超过一个小时。

对于 Vuex ,版本 0.8+ 与 Vue 2 保持兼容,所以部分不必强制升级。可以促使你立即升级的唯一理由,是你想要使用那些 Vuex 2 中新的高级特性,比如模块 (modules) 和减少的样板文件 (reduced boilerplate)。