【问题标题】:How to fix "Cannot read property 'responsive_class' of null" in Angular production build如何在 Angular 生产版本中修复“无法读取 null 的属性 'responsive_class'”
【发布时间】:2020-05-31 14:50:41
【问题描述】:

我对我的 Angular 应用程序进行了生产构建,当我尝试路由到另一个组件时,它会记录此错误:

错误错误:未捕获(承诺中):TypeError:无法读取 null 的属性“responsive_class”

TypeError: Cannot read property 'responsive_class' of null
    at main.872179a97a20c6d35a4f.js:1
    at Array.reduce (<anonymous>)
    at s (main.872179a97a20c6d35a4f.js:1)
    at new t (main.872179a97a20c6d35a4f.js:1)
    at new t (main.872179a97a20c6d35a4f.js:1)
    at new t (main.872179a97a20c6d35a4f.js:1)
    at y (main.872179a97a20c6d35a4f.js:1)
    at main.872179a97a20c6d35a4f.js:1
    at Li (main.872179a97a20c6d35a4f.js:1)
    at Ni (main.872179a97a20c6d35a4f.js:1)
    at D (polyfills.bd7334c8629fc0d28479.js:1)
    at D (polyfills.bd7334c8629fc0d28479.js:1)
    at polyfills.bd7334c8629fc0d28479.js:1
    at e.invokeTask (polyfills.bd7334c8629fc0d28479.js:1)
    at Object.onInvokeTask (main.872179a97a20c6d35a4f.js:1)
    at e.invokeTask (polyfills.bd7334c8629fc0d28479.js:1)
    at t.runTask (polyfills.bd7334c8629fc0d28479.js:1)
    at d (polyfills.bd7334c8629fc0d28479.js:1)
    at t.invokeTask [as invoke] (polyfills.bd7334c8629fc0d28479.js:1)
    at m (polyfills.bd7334c8629fc0d28479.js:1)

当它记录此错误时,屏幕变为空白,但在开发版本中一切正常。

有人经历过吗?

【问题讨论】:

  • 也许,在您的目标组件中尝试初始化您的对象中不存在的“responsive_class”!
  • @RoohbakhshMasoud 我不明白,请解释一下。
  • 请显示您的目标 component.ts 文件以帮助您。

标签: angular typescript npm


【解决方案1】:
  1. 运行ng serve --aot。它应该可以获取提前构建的所有错误,还可以获取诸如源映射之类的开发信息,这应该可以让您查明错误。
  2. 另外,显然,在您的代码中查找 responsive_class

【讨论】:

  • ng serve --aot 记录相同的错误,但我仍然找不到错误。 responsive_class 没有出现在我的代码中,我已经多次查找了。
【解决方案2】:

在 angular.json 的生产配置中, 将 buildOptimzation & optimization 更改为 false 并尝试部署。 它可能指向文件。

【讨论】:

    猜你喜欢
    • 2023-01-12
    • 2020-09-17
    • 1970-01-01
    • 2019-05-22
    • 2020-02-06
    • 2019-10-19
    • 2019-07-03
    • 1970-01-01
    • 2016-12-30
    相关资源
    最近更新 更多