Angular SSR NgApexcharts SVG 未定义

Rak*_*146 3 javascript server-side-rendering angular apexcharts

最初我在使用 Angular SSR 时遇到了这个包的问题,​​因为我在导入时遇到了这个错误Window is not defined

server.ts但是,您可以通过以下方式模拟它:

const MockBrowser = require('mock-browser').mocks.MockBrowser;
const mock = new MockBrowser();
global.window = mock.getWindow();
Run Code Online (Sandbox Code Playgroud)

我现在收到标题中所述的错误,SVG 未定义。有什么办法可以嘲笑这个吗?

https://github.com/svgdotjs/我相信它在幕后使用

谢谢

Pab*_*blo 5

使用ng-apexcharts,我仍然得到ReferenceError: SVG is not defined错误。这就是我尝试过的并且似乎有效的方法。

  1. 我不进口NgApexchartsModule

  2. 模板.html

<div id="chart" *ngIf="isBrowser"></div>
Run Code Online (Sandbox Code Playgroud)
  1. 组件.ts
constructor(@Inject(PLATFORM_ID) platformId: object) {
    this.isBrowser = isPlatformBrowser(platformId);
}

...

if (this.isBrowser) {
    const ApexCharts = require('apexcharts');
    const chart = new ApexCharts(document.querySelector('#chart'), this.options);
    chart.render();
}
Run Code Online (Sandbox Code Playgroud)