尝试在 openlayers 中导入 GeoTiff 源时出现错误 TS2304 AbstractDecoder
When trying to import GeoTiff source in openlayers get error TS2304 AbstractDecoder
当我尝试使用 Angular 12 和 Open 层编译我的 Web 应用程序时,如果我尝试使用
行编译代码
import GeoTIFF from 'ol/source/GeoTIFF';
我得到 2 个错误。
Error: node_modules/geotiff/dist-node/geotiffimage.d.ts:67:118 - error TS2304: Cannot find name 'Source'.
我通过向 ol/source/Source 添加导入解决了这个错误。
我在网上搜索时找不到的最后一个错误是
Error: node_modules/geotiff/dist-node/geotiffimage.d.ts:136:100 - error TS2304: Cannot find name 'AbstractDecoder'.
我找不到任何导入方式或任何文档。
我通过 npm install ol 和 npm install @types/ol 安装了 OL,它是一个新项目,所以我不知道为什么会出现这个错误或如何解决它。
任何解决此问题的建议或资源链接将不胜感激
从OpenLayers v6.6.0开始,ol包中包含了TS声明,所以你不再需要安装@types/ol(见发行说明here)。删除软件包应该可以解决您的问题。
我还建议您按照建议 in this Git issue 在 tsconfig.json
的 "compilerOptions"
中设置 "skipLibCheck": true
以避免类型定义的进一步问题。这是一个例子:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2015",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"skipLibCheck": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
},
}
当我尝试使用 Angular 12 和 Open 层编译我的 Web 应用程序时,如果我尝试使用
行编译代码import GeoTIFF from 'ol/source/GeoTIFF';
我得到 2 个错误。
Error: node_modules/geotiff/dist-node/geotiffimage.d.ts:67:118 - error TS2304: Cannot find name 'Source'.
我通过向 ol/source/Source 添加导入解决了这个错误。
我在网上搜索时找不到的最后一个错误是
Error: node_modules/geotiff/dist-node/geotiffimage.d.ts:136:100 - error TS2304: Cannot find name 'AbstractDecoder'.
我找不到任何导入方式或任何文档。
我通过 npm install ol 和 npm install @types/ol 安装了 OL,它是一个新项目,所以我不知道为什么会出现这个错误或如何解决它。
任何解决此问题的建议或资源链接将不胜感激
从OpenLayers v6.6.0开始,ol包中包含了TS声明,所以你不再需要安装@types/ol(见发行说明here)。删除软件包应该可以解决您的问题。
我还建议您按照建议 in this Git issue 在 tsconfig.json
的 "compilerOptions"
中设置 "skipLibCheck": true
以避免类型定义的进一步问题。这是一个例子:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2015",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"skipLibCheck": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
},
}