我们可以使用CDN而不是安装在角8的软件包。我尝试使用谷歌图表的角度8。安装很好,但我得到一些错误,而我服务的应用程序和编译失败。我甚至添加了:"skipLibCheck":true
在tsconfig.json文件中
这些错误如下:
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 266中的错误:277-303无法从非EcmaScript模块导入指定的导出“ChangeDetectionStrategy”(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 818中的错误:18-27无法从非EcmaScript模块导入指定的导出“组件”(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 265中的错误:28-49无法从非EcmaScript模块导入命名的导出“ɵɵngDeclareFactory”(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 307:25-49中的错误无法从非EcmaScript模块导入命名的导出'ɵɵngDeclareInjectable‘(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 216中的错误:28-52无法从非EcmaScript模块导入命名的导出'ɵɵngDeclareInjectable‘(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 857中的错误:26-48无法从非EcmaScript模块导入命名的导出'ɵɵngDeclareInjector‘(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 848中的错误:26-48无法从非EcmaScript模块导入命名的导出'ɵɵngDeclareNgModule‘(只有默认的导出可用)
./node_modules/angular-google-charts/fesm2015/angular-google-charts.mjs 693中的错误:81-83无法从非EcmaScript模块导入命名空间对象(只有默认导出可用)
使用的节点和角版本-角CLI: 8.0.6节点: 10.9.0
我无法立即升级节点/角度。所以任何解决办法在这里都是有帮助的
发布于 2022-08-22 13:36:24
我找到了解决办法。有时,由于节点和角度版本的可比性问题,我们得到以上的错误。简单的解决方案是升级节点,然后升级角度。然而,升级不应该是唯一的解决方案,因为在许多地方,我们不能仅仅升级我们的环境,因为它可能会导致现有代码(其他用例)的问题。一个对我有用的解决方案是,(下面的代码片段是关于在角8中实现google图表的,您必须创建一个新的角应用程序,然后将这些代码粘贴到其中)
在loader.js中为index.html添加CDN
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Google Chart Using CDN</title>
<base href="/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
</body>
</html>
在component.ts文件中启动google图表,您也可以在drawChartFunction中启动它:
ngOnInit() {
google.charts.load('current', { 'packages': ['corechart'] });
google.charts.setOnLoadCallback(this.drawChartFunction);
}
drawChartFunction() {
var data = google.visualization.arrayToDataTable([
['Col1', 'Col2', 'Col3', 'Col4', 'Col5'],
['', 123, 98, 'ABC', kjhg],
['', 234, 876, 'xyz', kjhgfd]
]);
var options = {
title: 'Google chart example'
}
var chart = new google.visualization.BubbleChart(document.getElementById('<ID of DIV where chart should be plotted>'));
chart.draw(data, options);
}
注意: 1.您必须根据您要绘制的图表更改图表名称:-包可以是代码图表、日历、量规,这取决于您可以参考google图表中的图表类型中不同类型的图表的类型。
https://stackoverflow.com/questions/73220629
复制相似问题