在我的项目中,我收到此错误消息:
test/node_modules/@types/leaflet/index.d.ts(856,11): error TS2415: Class 'GeoJSON' incorrectly extends base class 'FeatureGroup'.
Types of property 'setStyle' are incompatible.
Type '(style: StyleFunction) => this' is not assignable to type '(style: PathOptions) => this'.
Types of parameters 'style' and 'style' are incompatible.
Type 'PathOptions' is not assignable to type 'StyleFunction'.
Type 'PathOptions' provides no match for the signature '(feature?: Feature<GeometryObject>): PathOptions'.
以下是输入文件:
test.ts
import { LatLngExpression } from 'leaflet'
的package.json
{
"name": "test",
"version": "0.0.1",
"description": "",
"author": "",
"license": "ISC",
"devDependencies": {
"@types/leaflet": "^1.0.68",
"gulp": "^3.9.1",
"gulp-typescript": "^3.2.2",
"typescript": "^2.4.2"
}
}
tsconfig.json
{
"compileOnSave": true,
"compilerOptions": {
"noEmitOnError": true,
"target": "es5",
"module": "amd",
"moduleResolution": "node"
},
"include": [
"test.ts"
]
}
gulpfile.js
const gulp = require('gulp');
const ts = require("gulp-typescript");
const tsProject = ts.createProject("tsconfig.json");
gulp.task('default', () => {
const tsResult = tsProject.src().pipe(tsProject());
return tsResult.js.pipe(gulp.dest(''));
});
如果我执行“yarn&amp;&amp; gulp”,则会出现错误 - 但是,如果我使用“npm install”代替纱线,则不会出现错误,如果我使用“tsc -p”则不会出现错误。而不是gulp文件。 此外,只要我有Typescript 2.4.1就没有任何错误 - 它在我更新到Typescript 2.4.2后出现。
我想将此报告为一个错误 - 但我不知道哪个部分负责:yarn,typescript,gulp-typescript,@ types / leaflet?
我怎么能掌握这个?
显然,我从一个较大的项目中提取了这个测试用例,我希望使用“yarn&amp;&amp; gulp”,这会导致错误。所以我想要修复 - 而不是上面的任何“解决方法”。
答案 0 :(得分:0)
因为它似乎已经修复了#34;自动化&#34;。我的猜测是,npm和yarn的存储库之间存在不一致。
很难说 - 而且可能毫无用处。所以这个问题可能会被关闭或删除。
答案 1 :(得分:0)
将Typescript从版本2.4升级到2.5后,我遇到了类似的问题。更新@ types / leaflet模块为我解决了这个问题。
npm update @types/leaflet