Javascript 角度版本更新:重载签名必须全部为环境或非环境
我想将当前项目的角度版本更新为最新的角度版本。但面临以下错误:重载签名必须全部为环境或非环境签名 我目前的angular版本是4.4,根据最新的angular版本,我想更新到8.2。 由于不建议一次更新多个angular版本,因此目前我正在从4.4更新到5.2,然后将继续 我遵循了来自的步骤 之后,我删除/卸载了2个特定于Angular2的软件包,因为它们在Angular5中不受支持Javascript 角度版本更新:重载签名必须全部为环境或非环境,javascript,angular,typescript,angular5,Javascript,Angular,Typescript,Angular5,我想将当前项目的角度版本更新为最新的角度版本。但面临以下错误:重载签名必须全部为环境或非环境签名 我目前的angular版本是4.4,根据最新的angular版本,我想更新到8.2。 由于不建议一次更新多个angular版本,因此目前我正在从4.4更新到5.2,然后将继续 我遵循了来自的步骤 之后,我删除/卸载了2个特定于Angular2的软件包,因为它们在Angular5中不受支持 angular2忙 angular2 uuid 我还更新了几个对等依赖项及其各自的开发依赖项 @ng引导/ng引
ERROR in /Volumes/Work/Projects/src/app/readiumjs/readium_reader.d.ts (6,18): Overload signatures must all be ambient or non-ambient.
ERROR in /Volumes/Work/Projects/src/app/readiumjs/readium_reader.d.ts (7,18): Overload signatures must all be ambient or non-ambient.
ERROR in /Volumes/Work/Projects/src/lib/epub1.d.ts (14,18): Overload signatures must all be ambient or non-ambient.
这是我的档案:
package.json-
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "2.0.0-beta.6",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/platform-server": "^5.2.11",
"@angular/router": "^5.2.11",
"@ng-bootstrap/ng-bootstrap": "^1.1.1",
"@ngx-translate/core": "^8.0.0",
"@ngx-translate/http-loader": "^2.0.0",
"array-unique": "^0.3.2",
"classlist.js": "^1.1.20150312",
"core-js": "^2.4.1",
"elasticlunr": "^0.9.5",
"enhanced-resolve": "^3.3.0",
"font-awesome": "^4.7.0",
"hammerjs": "^2.0.8",
"intl": "^1.2.5",
"normalizr": "^3.3.0",
"readline": "^1.3.0",
"rxjs": "^5.5.12",
"sw-toolbox": "^3.6.0",
"tether": "^1.4.3",
"ts-helpers": "^1.1.1",
"typescript": "^2.4.2",
"web-animations-js": "2.2.4",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.4",
"@angular/compiler-cli": "^5.2.11",
"@compodoc/compodoc": "^1.0.9",
"@types/jasmine": "2.5.38",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"bootstrap": "4.0.0-alpha.6",
"codelyzer": "^4.0.1",
"gulp": "^3.9.1",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.1",
"gulp-sync": "^0.1.4",
"jasmine-core": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"jquery": "^3.2.1",
"jquery-ui-dist": "^1.12.1",
"karma": "~1.4.1",
"karma-chrome-launcher": "^2.2.0",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^0.2.0",
"karma-html-reporter": "^0.2.7",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-phantomjs-launcher": "^1.0.4",
"phantomjs-prebuilt": "^2.1.16",
"protractor": "~5.1.2",
"protractor-html-screenshot-reporter": "0.0.21",
"protractor-jasmine2-screenshot-reporter": "^0.5.0",
"sw-precache": "^5.1.1",
"ts-node": "~3.3.0",
"tslint": "^5.0.0",
"typedoc": "^0.5.7"
}
declare function setBookTitle(bookId: string, bookTitle: string);
function setBookTitle(_bookId, _bookTitle) {
bookId = _bookId;
bookTitle = _bookTitle;
}
setBookTitle(bookId, bookName);
以下是我认为失败的部分代码:
readium\u reader.d.ts(6,18)-
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "2.0.0-beta.6",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/platform-server": "^5.2.11",
"@angular/router": "^5.2.11",
"@ng-bootstrap/ng-bootstrap": "^1.1.1",
"@ngx-translate/core": "^8.0.0",
"@ngx-translate/http-loader": "^2.0.0",
"array-unique": "^0.3.2",
"classlist.js": "^1.1.20150312",
"core-js": "^2.4.1",
"elasticlunr": "^0.9.5",
"enhanced-resolve": "^3.3.0",
"font-awesome": "^4.7.0",
"hammerjs": "^2.0.8",
"intl": "^1.2.5",
"normalizr": "^3.3.0",
"readline": "^1.3.0",
"rxjs": "^5.5.12",
"sw-toolbox": "^3.6.0",
"tether": "^1.4.3",
"ts-helpers": "^1.1.1",
"typescript": "^2.4.2",
"web-animations-js": "2.2.4",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.4",
"@angular/compiler-cli": "^5.2.11",
"@compodoc/compodoc": "^1.0.9",
"@types/jasmine": "2.5.38",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"bootstrap": "4.0.0-alpha.6",
"codelyzer": "^4.0.1",
"gulp": "^3.9.1",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.1",
"gulp-sync": "^0.1.4",
"jasmine-core": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"jquery": "^3.2.1",
"jquery-ui-dist": "^1.12.1",
"karma": "~1.4.1",
"karma-chrome-launcher": "^2.2.0",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^0.2.0",
"karma-html-reporter": "^0.2.7",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-phantomjs-launcher": "^1.0.4",
"phantomjs-prebuilt": "^2.1.16",
"protractor": "~5.1.2",
"protractor-html-screenshot-reporter": "0.0.21",
"protractor-jasmine2-screenshot-reporter": "^0.5.0",
"sw-precache": "^5.1.1",
"ts-node": "~3.3.0",
"tslint": "^5.0.0",
"typedoc": "^0.5.7"
}
declare function setBookTitle(bookId: string, bookTitle: string);
function setBookTitle(_bookId, _bookTitle) {
bookId = _bookId;
bookTitle = _bookTitle;
}
setBookTitle(bookId, bookName);
main.js-
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "2.0.0-beta.6",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/platform-server": "^5.2.11",
"@angular/router": "^5.2.11",
"@ng-bootstrap/ng-bootstrap": "^1.1.1",
"@ngx-translate/core": "^8.0.0",
"@ngx-translate/http-loader": "^2.0.0",
"array-unique": "^0.3.2",
"classlist.js": "^1.1.20150312",
"core-js": "^2.4.1",
"elasticlunr": "^0.9.5",
"enhanced-resolve": "^3.3.0",
"font-awesome": "^4.7.0",
"hammerjs": "^2.0.8",
"intl": "^1.2.5",
"normalizr": "^3.3.0",
"readline": "^1.3.0",
"rxjs": "^5.5.12",
"sw-toolbox": "^3.6.0",
"tether": "^1.4.3",
"ts-helpers": "^1.1.1",
"typescript": "^2.4.2",
"web-animations-js": "2.2.4",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.4",
"@angular/compiler-cli": "^5.2.11",
"@compodoc/compodoc": "^1.0.9",
"@types/jasmine": "2.5.38",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"bootstrap": "4.0.0-alpha.6",
"codelyzer": "^4.0.1",
"gulp": "^3.9.1",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.1",
"gulp-sync": "^0.1.4",
"jasmine-core": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"jquery": "^3.2.1",
"jquery-ui-dist": "^1.12.1",
"karma": "~1.4.1",
"karma-chrome-launcher": "^2.2.0",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^0.2.0",
"karma-html-reporter": "^0.2.7",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-phantomjs-launcher": "^1.0.4",
"phantomjs-prebuilt": "^2.1.16",
"protractor": "~5.1.2",
"protractor-html-screenshot-reporter": "0.0.21",
"protractor-jasmine2-screenshot-reporter": "^0.5.0",
"sw-precache": "^5.1.1",
"ts-node": "~3.3.0",
"tslint": "^5.0.0",
"typedoc": "^0.5.7"
}
declare function setBookTitle(bookId: string, bookTitle: string);
function setBookTitle(_bookId, _bookTitle) {
bookId = _bookId;
bookTitle = _bookTitle;
}
setBookTitle(bookId, bookName);
epubReadiumReaderComponent.ts-
"dependencies": {
"@angular/animations": "^5.2.11",
"@angular/common": "^5.2.11",
"@angular/compiler": "^5.2.11",
"@angular/core": "^5.2.11",
"@angular/forms": "^5.2.11",
"@angular/http": "^5.2.11",
"@angular/material": "2.0.0-beta.6",
"@angular/platform-browser": "^5.2.11",
"@angular/platform-browser-dynamic": "^5.2.11",
"@angular/platform-server": "^5.2.11",
"@angular/router": "^5.2.11",
"@ng-bootstrap/ng-bootstrap": "^1.1.1",
"@ngx-translate/core": "^8.0.0",
"@ngx-translate/http-loader": "^2.0.0",
"array-unique": "^0.3.2",
"classlist.js": "^1.1.20150312",
"core-js": "^2.4.1",
"elasticlunr": "^0.9.5",
"enhanced-resolve": "^3.3.0",
"font-awesome": "^4.7.0",
"hammerjs": "^2.0.8",
"intl": "^1.2.5",
"normalizr": "^3.3.0",
"readline": "^1.3.0",
"rxjs": "^5.5.12",
"sw-toolbox": "^3.6.0",
"tether": "^1.4.3",
"ts-helpers": "^1.1.1",
"typescript": "^2.4.2",
"web-animations-js": "2.2.4",
"zone.js": "^0.8.14"
},
"devDependencies": {
"@angular/cli": "1.2.4",
"@angular/compiler-cli": "^5.2.11",
"@compodoc/compodoc": "^1.0.9",
"@types/jasmine": "2.5.38",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"bootstrap": "4.0.0-alpha.6",
"codelyzer": "^4.0.1",
"gulp": "^3.9.1",
"gulp-clean": "^0.3.2",
"gulp-concat": "^2.6.1",
"gulp-sync": "^0.1.4",
"jasmine-core": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"jquery": "^3.2.1",
"jquery-ui-dist": "^1.12.1",
"karma": "~1.4.1",
"karma-chrome-launcher": "^2.2.0",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^0.2.0",
"karma-html-reporter": "^0.2.7",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"karma-phantomjs-launcher": "^1.0.4",
"phantomjs-prebuilt": "^2.1.16",
"protractor": "~5.1.2",
"protractor-html-screenshot-reporter": "0.0.21",
"protractor-jasmine2-screenshot-reporter": "^0.5.0",
"sw-precache": "^5.1.1",
"ts-node": "~3.3.0",
"tslint": "^5.0.0",
"typedoc": "^0.5.7"
}
declare function setBookTitle(bookId: string, bookTitle: string);
function setBookTitle(_bookId, _bookTitle) {
bookId = _bookId;
bookTitle = _bookTitle;
}
setBookTitle(bookId, bookName);
注意:我搜索了上述问题的答案,但没有找到合适的解决方案。
他们中的一些人要求更改函数名,因为它已过载,但对我来说无法工作。我不确定。但是您是否尝试将返回类型添加到声明的函数中,如
声明函数setBookTitle(bookId:string,bookTitle:string):void
@Sumit是的,我尝试了返回类型void和any,但这两个函数对我都不起作用。它说,重载签名
您是否检查过是否有其他声明了相同名称的函数。这通常是由它引起的。简单的解决方案是将此导出包装到另一个名称空间中,然后使用it@Sumit不,没有其他相同的实例。setBookTitle函数名仅出现三次。