原文:Vue 2.5 releasedphp
译者:neal1991html
welcome to star my articles-translator , providing you advanced articles translation. Any suggestion, please issue or contact mevue
LICENSE: MITreact
咱们很高兴宣布 Vue 2.5 Level E 的发布!本次发布包括多个功能提高而且咱们推荐你查看发布说明来获取完整详细信息。 在这篇文章中,咱们将重点介绍一些更重要的的变化:更好的 TypeScript 集成,更好的错误处理,更好地支持单文件组件中的函数式组件以及与环境无关的服务端渲染。git
得益于 TypeScript 团队的帮助,2.5 提供了大大改进的类型声明,能够与 Vue 的开箱即用的 API 一块儿使用,而不须要组件类装饰器。 新的类型声明还可让 Vetur 等编辑器扩展功能更强大,为纯 JavaScript 用户提供更好的Intellisense 支持。 更多详细信息,请查看咱们以前关于更改的信息(翻译版本)。github
感谢来自 TypeScript 团队的 Daniel Rosenwasser 发起的PR,以及核心团队成员 Herrington Darkholme和 Katashin 的改进和审查。vue-router
注意:TypeScript 用户还应将如下包更新为最新版本从而兼容类型声明:
vue-router
,vuex
,vuex-router-sync
和vue-class-component
。vuex
在2.4及更早版本中,咱们一般使用全局 config.errorHandleroption
来处理应用程序中的意外错误。 咱们还有renderError
组件选项来处理渲染函数中的错误。 可是,咱们缺乏处理应用程序特定部份内的泛型错误的机制。typescript
在2.5中,咱们引入了新的 errorCaptured
钩子。 具备此钩子的组件捕获其子组件树(不包括其自身)中的全部错误(不包括在异步回调中调用的那些)。 若是你熟悉React,这与 React 16 中引入的错误边界的概念类似。钩子接收与全局 errorHandler
相同的参数,你能够利用这个钩子来优雅地处理和显示错误。segmentfault
SFC
中的函数式组件使用 vue-loader> = 13.3.0
和 Vue 2.5
,在 * .vue
文件中定义为单个文件组件的函数式组件如今能够获得正确的模板编译,Scoped CSS和热从新加载支持。 这使得将叶子组件转换为函数式的更为容易,从而进行性能优化。
*感谢核心团队成员Blake Newman 对于这些功能作出的贡献。
vue-server-renderer
的默认构建假定一个 Node.js 环境,这使得它在有的 JavaScript 运行时(如 php-v8js 或Nashorn)中不可用。 在 2.5 中,咱们已经发布了一个与环境无关的 vue-server-renderer
版本,能够在浏览器或纯 JavaScript 引擎中使用。 这能够打开有趣的策略,例如直接在 PHP 进程中使用 Vue 服务端渲染。
一样,咱们建议你查看完整的发布说明从而了解其余 API 的改进,包括 v-on
,v-model
,scoped slot
,provide/inject
等。 你可能也对咱们的公共蓝图感兴趣,详细说明了团队的工做。 干杯!