Angular 没有为外部模块提供名称
我创建了一个数据库,然后尝试将该数据库包含到另一个创建的库中。构建良好,但收到-“output.globals中未提供外部模块“my data”的名称–猜测“myData”。我错过了什么 完成重新创建的步骤Angular 没有为外部模块提供名称,angular,angular7,Angular,Angular7,我创建了一个数据库,然后尝试将该数据库包含到另一个创建的库中。构建良好,但收到-“output.globals中未提供外部模块“my data”的名称–猜测“myData”。我错过了什么 完成重新创建的步骤 ng新测试项目--创建=应用程序=错误 cd测试项目 npm审计修复程序 ng g库我的数据 我的核心 ng g应用程序通讯簿 ng构建我的数据 然后在my-core.module中从“我的数据”添加导入{MyDataModule} 然后在my-core.module中添加导入:[MyDa
- ng新测试项目--创建=应用程序=错误
- cd测试项目
- npm审计修复程序
- ng g库我的数据
- 我的核心
- ng g应用程序通讯簿
- ng构建我的数据
- 然后在my-core.module中从“我的数据”添加导入{MyDataModule}李>
- 然后在my-core.module中添加导入:[MyDataModule]
- 建立我的核心
import { NgModule } from '@angular/core';
import { MyCoreComponent } from './my-core.component';
import { MyDataModule } from 'my-data';
@NgModule({
declarations: [MyCoreComponent],
imports: [MyDataModule],
exports: [MyCoreComponent]
})
export class MyCoreModule { }
- 生成后获取“output.globals中没有为外部模块‘我的数据’提供名称–猜测‘我的数据’”
my core
的UMD捆绑包时要查找什么
要修复警告,请在ng package.json
{
"$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
"dest": "../../dist/my-core",
"lib": {
"entryFile": "src/public-api.ts",
"umdModuleIds": {
"my-data": "my-data"
}
}
}
我认为这是因为,由于所有依赖项都被视为外部依赖项,并且您的
my data
不是通过类似npm的方式安装的,因此您需要声明预期的UMD模块id。请参见,了解因此错误而来这里的其他人,上面的操作似乎很乏味,或者您只是想知道是什么让您像我一样突然需要这些
在我的情况下(为了让玩笑起作用),我在tsconfig中更改了以下内容:
"compilerOptions": {
"module": "commonjs",
"target": "esnext",
"angularCompilerOptions": {
"preserveWhitespaces": false
}
回到:
"compilerOptions": {
"module": "esnext",
"target": "es5"
}
我不知道为什么会这样,我仍然在阅读上面的回答者提供的兔子洞,我仍然在努力让jest测试和我的库都工作起来。无论如何,我希望这能帮助一些人。Pari Baker,没有数据,您已经完成了上述步骤。我没有创建任何组件或模块,也没有向应用程序添加任何代码。如果您按照上述步骤操作,您将得到相同的.R。Richards,我只是想了解Angular 6/7中的库是如何工作的,因为我有一个Angular 5应用程序,我计划移植到Angular 7。同样,没有什么真正需要测试的,因为我没有添加任何代码,我只是运行了上面概述的步骤,得到了这个消息,并试图理解为什么。这很有效!在阅读“解析UMD模块标识符”时,我永远不会将文章与错误关联起来。谢谢你的信息。我不知道我怎么会知道这个,甚至不知道如何从角度5到角度7来寻找这个。@Tybarths,如果这个答案对你有帮助,你能把他的答案标记为所有其他读者都接受吗?