【问题标题】:d3v5 Angular 8 production mode - ERROR TypeError: (void 0) is not a functiond3v5 Angular 8 生产模式 - ERROR TypeError: (void 0) is not a function
【发布时间】:2020-03-12 21:07:17
【问题描述】:

D3v5 函数在开发模式下工作正常,但在生产模式下抛出运行时错误

ERROR TypeError: (void 0) is not a function

输入脚本代码

import { Component } from '@angular/core';
import {timeFormat} from 'd3-time-format';
...
export class AppComponent {

  constructor(){
    var formatTime = timeFormat("%B %d, %Y");
   console.log('Time parser :: ', formatTime(new Date))
  }
}

包.json

  "dependencies": {
    "@angular/animations": "~8.1.1",
    "@angular/common": "~8.1.1",
    "@angular/compiler": "~8.1.1",
    "@angular/core": "~8.1.1",
    "@angular/forms": "~8.1.1",
    "@angular/platform-browser": "~8.1.1",
    "@angular/platform-browser-dynamic": "~8.1.1",
    "@angular/router": "~8.1.1",
    "@types/d3": "^5.7.2",
    "d3": "^5.13.1",
    "rxjs": "~6.4.0",
    "tslib": "^1.9.0",
    "zone.js": "~0.9.1"
  },

tsconfig.json - 还尝试按照 Error in d3.js after upgrading to Angular 8 更新目标

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "downlevelIteration": true,
    "experimentalDecorators": true,
    "module": "esnext",
    "moduleResolution": "node",
    "importHelpers": true,
    **"target": "es5",**
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": ..
  },
  "angularCompilerOptions": ..
}

任何建议或线索将不胜感激。

谢谢

【问题讨论】:

  • 您是否碰巧找到了解决此问题的有效解决方案?我也面临同样的问题。
  • 我不得不修改版本,下面你会找到适合我的版本

标签: angular d3.js


【解决方案1】:

更新 @angular-devkit/build-angular 版本后

"@angular-devkit/build-angular": "~0.801.2"

"@angular-devkit/build-angular": "^0.803.17"

为我工作。

【讨论】:

  • 由于 Angular 的一些问题,它在优化中破坏了第三方库,因此通过更新构建 Angular 版本来工作
【解决方案2】:

对于遇到类似问题的任何人,我都可以通过将 d3 和 angular 调整为以下版本来使其工作

 "dependencies": {
    "@angular/animations": "~8.2.14",
    "@angular/common": "~8.2.14",
    "@angular/compiler": "~8.2.14",
    "@angular/core": "~8.2.14",
    "@angular/forms": "~8.2.14",
    "@angular/platform-browser": "~8.2.14",
    "@angular/platform-browser-dynamic": "~8.2.14",
    "@angular/router": "~8.2.14",
    "@types/d3": "^5.7.2",
    "d3": "^5.14.0",
    "rxjs": "~6.4.0",
    "tslib": "^1.10.0",
    "zone.js": "~0.9.1"
  },

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-09
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 2019-11-10
    • 2019-01-16
    • 2017-01-07
    相关资源
    最近更新 更多