我在一个使用angular 6和D3 v5的项目中工作,实际上我在我的应用程序中导入了d3js librairie,以便在angular应用程序中使用d3js。 现在,我必须导入一个js文件,其中包含也使用d3js的函数。 因此将文件js放在node_modules中,然后我以这种方式在angular.json文件中指定了文件的路径:
"scripts": [
"node_modules/jquery/dist/jquery.min.js",
"node_modules/materialize-css/dist/js/materialize.min.js",
"./node_modules/labeler.js"
]
在我的component.ts文件中,我使用此导入对其进行了调用:
import * as labeler from 'labeler';
我在导入声明后也以这种方式添加了
declare var labeler: any;
因此,现在在component.ts文件中的代码中,我应该使用此函数,该函数是通过以下方式在导入中调用的:
d3.labeler().label(this.mylist1)
.anchor(this.mylist2)
d3.labeler()应该是文件js中名为“ labeler.js”的函数
该功能不起作用,出现此错误:
[WDS] Warnings while compiling. client:147
./node_modules/labeler.js
4:16-26 "export 'labeler' (imported as 'd3') was not found in 'd3' client:153
./src/app/components/init-map-markers/init-map-markers.component.ts
918:8-18 "export 'labeler' (imported as 'd3') was not found in 'd3'
感谢任何帮助,谢谢大家