• 自定义指令 简化
    • 升级方式
  • 指令 .literal 修饰符 移除
    • 升级方式

    自定义指令 简化

    在新版中,指令的使用范围已经大大减小了:现在指令仅仅被用于低级的 DOM 操作。大多数情况下,最好是使用组件作为代码复用的抽象层。

    显要的改变有如下几点:

    • 指令不再拥有实例。意思是,在指令的钩子函数中不再拥有实例的 this 。替代的是,你可以在参数中接受你需要的任何数据。如果确实需要,可以通过 el 来访问实例。
    • 类似 acceptStatementdeeppriority 等都已被弃用。为了替换双向指令,见 示例。
    • 现在有些钩子的意义和以前不一样了,并且多了两个钩子函数。幸运的是,新钩子更加简单,更加容易掌握。详见 自定义指令指南。

    升级方式

    运行迁移工具找到定义指令的地方。在 helper 工具会把这些地方标记出来,因为很有可能这些地方需要重构。

    指令 .literal 修饰符 移除

    .literal 修饰符已经被移除,为了获取一样的功能,可以简单地提供字符串修饰符作为值。

    示例,如下更改:

    1. <p v-my-directive.literal="foo bar baz"></p>

    只是:

    1. <p v-my-directive="'foo bar baz'"></p>

    升级方式

    运行迁移工具找到实例中使用 .literal 修饰符的地方。