打字稿重复标识符错误
Typescript Duplicate identifier error
当我尝试 运行 我的 angular-meteor 客户端(离子服务)时出现以下错误:
[00:29:20] typescript: node_modules/meteor-typings/1.3/main.d.ts, line: 657
Duplicate identifier 'Status'.
L657: type Status = 'connected' | 'connecting' | 'failed' | 'waiting' | 'offline';
[00:29:20] typescript: node_modules/meteor-typings/1.3/main.d.ts, line: 695
Duplicate identifier 'Status'.
L695: type Status = 'connected' | 'connecting' | 'failed' | 'waiting' | 'offline';
[00:29:20] transpile failed
源代码文件中的错误是:TS2300:Duplicate identifier 'Status'
.
项目是使用本教程构建的:https://angular-meteor.com/tutorials/whatsapp2/ionic/setup
大多数文件与此处相同:https://github.com/Urigo/Ionic2CLI-Meteor-WhatsApp
Ionic Framework: 2.1.0
Ionic Native: 2.4.1
Ionic App Scripts: 1.1.3
Angular Core: 2.2.1
Angular Compiler CLI: 2.2.1
Node: 6.3.1
OS Platform: macOS Sierra
Navigator Platform: MacIntel
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
您可以看到所有涉及的内容files in this codebase。
知道发生了什么事吗?接下来要看哪里?我承认我有点失落。
我恢复了自上次运行以来的所有代码更改,并删除了 node_modules 并重新安装了项目要求。我仍然得到同样的错误,尽管据我所知没有任何改变。
感谢任何guidance/ideas。
我的 tsconfig 文件中有这个:
"types": [
"meteor-typings",
"@types/underscore"
]
我一删除 'meteor-typings',它就成功了!
"types": [
"@types/underscore"
]
在我的 package.json 文件中我有:
"devDependencies": {
"@ionic/app-scripts": "1.1.3",
"@types/meteor": "^1.3.32",
"@types/underscore": "^1.7.36",
"meteor-typings": "^1.3.1",
"tmp": "0.0.31",
"typescript": "2.0.9",
"typescript-extends": "^1.0.1"
},
不知何故,我猜它已经是转译过程的一部分,而 tsconfig 中的附加行使它看起来更是如此。 (这是我个人的猜测,我不知道为什么):)
FWIW 当我将 Ionic 从 2.0.0 更新到 2.2.0 时,我开始遇到这个问题。
修复对我有用,我有教程中的 tsconfig.json 文件:
"types": [
"meteor-typings",
"@types/underscore",
"@types/meteor-accounts-phone",
"@types/meteor-collection-hooks"
]
删除 "meteor-typings" 解决了问题。我不知道为什么。
所以我预计教程可能需要更新,因为有人更新到最新的 Ionic。我将 post 在他们的 github 回购中提出问题。
进一步澄清:在 api/tsconfig.json 中,您将 types[] 中的 "meteor-typings" 保持原样。在根文件夹中,您删除 types[] 中的附加 "meteor-typings" 然后它应该 运行 没有错误。不要忘记将软链接添加到 api 文件夹内的 node_modules。
对于 windows 用户,这是通过以下方式完成的:
mklink /d \node_modules ..\node_modules
如教程中所述,api 文件夹中不应有 package.json。
感谢修复。
当我尝试 运行 我的 angular-meteor 客户端(离子服务)时出现以下错误:
[00:29:20] typescript: node_modules/meteor-typings/1.3/main.d.ts, line: 657
Duplicate identifier 'Status'.
L657: type Status = 'connected' | 'connecting' | 'failed' | 'waiting' | 'offline';
[00:29:20] typescript: node_modules/meteor-typings/1.3/main.d.ts, line: 695
Duplicate identifier 'Status'.
L695: type Status = 'connected' | 'connecting' | 'failed' | 'waiting' | 'offline';
[00:29:20] transpile failed
源代码文件中的错误是:TS2300:Duplicate identifier 'Status'
.
项目是使用本教程构建的:https://angular-meteor.com/tutorials/whatsapp2/ionic/setup 大多数文件与此处相同:https://github.com/Urigo/Ionic2CLI-Meteor-WhatsApp
Ionic Framework: 2.1.0
Ionic Native: 2.4.1
Ionic App Scripts: 1.1.3
Angular Core: 2.2.1
Angular Compiler CLI: 2.2.1
Node: 6.3.1
OS Platform: macOS Sierra
Navigator Platform: MacIntel
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
您可以看到所有涉及的内容files in this codebase。
知道发生了什么事吗?接下来要看哪里?我承认我有点失落。 我恢复了自上次运行以来的所有代码更改,并删除了 node_modules 并重新安装了项目要求。我仍然得到同样的错误,尽管据我所知没有任何改变。
感谢任何guidance/ideas。
我的 tsconfig 文件中有这个:
"types": [
"meteor-typings",
"@types/underscore"
]
我一删除 'meteor-typings',它就成功了!
"types": [
"@types/underscore"
]
在我的 package.json 文件中我有:
"devDependencies": {
"@ionic/app-scripts": "1.1.3",
"@types/meteor": "^1.3.32",
"@types/underscore": "^1.7.36",
"meteor-typings": "^1.3.1",
"tmp": "0.0.31",
"typescript": "2.0.9",
"typescript-extends": "^1.0.1"
},
不知何故,我猜它已经是转译过程的一部分,而 tsconfig 中的附加行使它看起来更是如此。 (这是我个人的猜测,我不知道为什么):)
FWIW 当我将 Ionic 从 2.0.0 更新到 2.2.0 时,我开始遇到这个问题。
修复对我有用,我有教程中的 tsconfig.json 文件:
"types": [
"meteor-typings",
"@types/underscore",
"@types/meteor-accounts-phone",
"@types/meteor-collection-hooks"
]
删除 "meteor-typings" 解决了问题。我不知道为什么。
所以我预计教程可能需要更新,因为有人更新到最新的 Ionic。我将 post 在他们的 github 回购中提出问题。
进一步澄清:在 api/tsconfig.json 中,您将 types[] 中的 "meteor-typings" 保持原样。在根文件夹中,您删除 types[] 中的附加 "meteor-typings" 然后它应该 运行 没有错误。不要忘记将软链接添加到 api 文件夹内的 node_modules。
对于 windows 用户,这是通过以下方式完成的:
mklink /d \node_modules ..\node_modules
如教程中所述,api 文件夹中不应有 package.json。
感谢修复。