当我尝试在我的 Angular 项目中导入 proj4 时,出现错误
错误:在“proj4”中找不到导出“defs”(导入为“proj4”)(可能的导出:默认)
我导入为
从“proj4”导入*作为proj4;
虽然我已经安装了proj4作为
npm install --save @types/proj4
如何解决这个问题?我在这里错过了什么吗?
根据https://github.com/proj4js/proj4js/issues/247,对于Typescript:
import proj4 from 'proj4';
allowSyntheticDefaultImports: true
必须在tsconfig.json
这为我解决了 TypeScript 4.8 和 Proj4 2.8 的问题。
此导入声明
import * as proj4 from 'proj4';
在 2017 年之前适用于 proj4
的 v2.4。
要在 2.4 及更高版本中使用它,请按以下方式导入:-
import proj4 from 'proj4';
此外,您可能需要对
TypeScript compiler
进行以下更改,即在 tsconfig.json
内:-
"allowSyntheticDefaultImports": true
这些改变应该可以做到。
我正在使用 Angular 17,我刚刚运行了建议的操作,它似乎已经解决了问题:
npm i --save-dev @types/proj4
我的解决方案是同时安装
proj4
和 @types/proj4
。相当愚蠢,但如果有效,那就有效。
npm i proj4 --save
npm i @types/proj4 --save