Angular2:找不到命名空间'environment'



我已经配置了我的tsconfig.json,以便我可以在代码中使用短导入路径以简洁。例如,我可以做import { FooService } from 'core',而不是被迫做像import { FooService } from '../../../core/services/foo/foo.service'这样的事情。

这工作得很好,除了某种原因,现在我已经创建了一个新文件,其中一个导入抛出了一个错误:

找不到命名空间"环境"。

发生此错误的原因是以下行:import { environment } from 'environment';

这很奇怪,因为我在许多其他服务中都有相同的导入,并且它们都没有抛出错误,它只发生在我创建的这个新文件中。

这是我tsconfig.json

{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"paths": {
"core": ["app/core"],
"core/*": ["app/core/*"],
"shared": ["app/shared"],
"shared/*": ["app/shared/*"],
"modal": ["app/modal"],
"modal/*": ["app/modal/*"],
"environment": ["environment/environment"]// HERE
},
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2016",
"dom"
]
}
}

如您所见,paths设置正确。如果他们不是,它就不会在其他文件中一直工作......

这是怎么回事?有人知道如何解决这个问题吗?

问题已解决

我的代码中有一个拼写错误,导致这种情况。很难找到,因为智能感知没有突出显示它。

我有:url: environment.serverUrl;

当我应该有:url: string = environment.serverUrl;

我不小心使用了一个值作为类型。哎呀!

最新更新