【问题标题】:Error: Metadata version mismatch for module found version 4, expected 3错误:发现模块的元数据版本不匹配版本 4,预期为 3
【发布时间】:2018-09-16 19:24:20
【问题描述】:

我正在尝试在发布模式下运行我的 Ionic 应用程序,但遇到了一个奇怪的错误。该应用在非发布模式下运行良好。

错误:模块 /Users/jscotto/Documents/projects/ionic_app/node_modules/ionic-audio/dist/ionic-audio-interfaces.d.ts 的元数据版本不匹配,找到版本 4,预期版本 3

我正在使用一个名为 ionic-audio 的插件,它似乎使用 Angular 5,我的应用程序使用 Angular 4,但没有意义的是为什么它只能在发布构建模式下不起作用。

有什么可能导致这种情况的想法吗?

【问题讨论】:

  • 你不能像现在这样混合版本。如果有适用于 Angular 4 的插件版本,请使用它。或者,将您的应用程序更新到 Angular 5。
  • 这并不能解释为什么它可以在没有发布模式的情况下工作。有人会认为,如果这是一个兼容性问题,那么两者都行不通。
  • 一个人思考(有时会出错)。开发构建比产品构建更宽容。一个很好的理由是,在运行ng serve 时,每次保存发生时,转译器都不必执行所有prod 构建工作。您在错误中看到的检查可能不会在开发构建期间运行。 v4 角度/编译器现在在很多情况下都无法处理在 v5 中编码的组件。这是 v4 和 v5 之间的重大变化之一。
  • 如果更新我的项目不是一个选项,并且插件没有 angular 5,那么在运行 prod 时有没有办法绕过它?
  • 我不知道。我的意思是,除了在开发版本中实时运行应用程序之外。我知道你不想那样。对不起!

标签: javascript angular ionic-framework ionic3


【解决方案1】:

将我的插件降级到 Angular 4 有效。

【讨论】:

    猜你喜欢
    • 2018-07-06
    • 2018-06-11
    • 2018-05-12
    • 1970-01-01
    • 2020-01-09
    • 2018-04-19
    • 1970-01-01
    • 2018-06-26
    • 1970-01-01
    相关资源
    最近更新 更多