gpt4 book ai didi

Angular 10 : Unable to write a reference

转载 作者:行者123 更新时间:2023-12-04 12:36:12 25 4
gpt4 key购买 nike

我尝试按照 angular 更新指南从 angular 8 升级到 10。
我的项目由核心应用程序、共享(2 个库、谷歌地图和共享组件)和一个额外的 apk fsm(2 个库、应用程序及其元数据)组成。
核心和共享的构建正在通过但 fsm 构建失败并显示“错误:无法在 C:/Users/PATH/fsm-frontend/node_modules/shared-frontend/src/components/chip/chip.component 中写入对 ChipComponent 的引用.ts 来自 C:/Users/PATH/fsm-frontend/node_modules/shared-frontend/src/components/chip/chip.module.ts
“错误。
ChipComponent 本身没有问题,但可能在某些导入或 tsconfig 中。
共享 tsconfig.json:

{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"downlevelIteration": true,
"importHelpers": true,
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2020",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
],
"paths": {
"shared-frontend": [
"dist/shared-frontend"
],
"shared-frontend/*": [
"dist/shared-frontend/*"
],
"map": [
"dist/map"
],
"map/*": [
"dist/map/*"
]
}
}
}
FSM tsconfig.json:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"importHelpers": true,
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "es2020",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
],
"paths": {
"fsm-frontend": [
"dist/fsm-frontend"
],
"fsm-frontend/*": [
"dist/fsm-frontend/*"
],
"@angular/*": [
"./node_modules/@angular/*"
],
"rxjs": [
"./node_modules/rxjs"
],
"zone.js": [
"./node_modules/zone.js"
],
"@ngx-translate/*": [
"./node_modules/@ngx-translate/*"
],
"shared-frontend": [
"./node_modules/shared-frontend"
],
"primeng": [
"./node_modules/primeng"
],
"tslib": [
"./node_modules/tslib"
],
"fsm-metadata": [
"dist/fsm-metadata"
],
"fsm-metadata/*": [
"dist/fsm-metadata/*"
]
}
}
}
ng-package.json
{
"$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
"dest": "../../dist/shared-frontend",
"lib": {
"entryFile": "src/public_api.ts"
}
}
共享结构:
projects - map
- shared-frontend
-src
- ...
-components
-...
-chip
-chip.component.ts
-chip.module.ts
-index.ts

-lib
-shared-frontend.module.ts
...
pubic_api.ts
共享前端.module.ts:
... // exports including:
export * from '../components/index';
@NgModule({
imports: [CommonModule],
exports: [
CommonModule,
...
ChipModule,
...
]
})
export class SharedModule {
static forRoot(): ModuleWithProviders<SharedModule> {
return {
ngModule: SharedModule,
providers: [
SERVICES.....
]
};
}
}
来自芯片的 index.ts:
...
export * from './chip/chip.module';
export * from './chip/chip.component';
...
pubic_api.ts
export * from './lib/hive-shared-frontend.module';
ng serve 也可以使用,但 apk 看起来没有使用共享中的任何内容。
ng build fsm-frontend --prod 也通过..
顺便说一句,我通过 npm 链接将共享( map 和前端)和 fsm(前端和元数据)链接到核心,并通过 npm 链接共享到 fsm
编辑:桶文件中的导出顺序重要吗?

最佳答案

我正在同一个项目中构建一个库和一个应用程序。当接口(interface)定义被自动导入时,我的问题就出现了。引用的路径是公共(public) api 文件而不是库。
自动导入创建:
从“projects/mylib/src/public-api”导入 { AbcInterface }
需要是
从“@mylib”导入 { AbcInterface }

关于 Angular 10 : Unable to write a reference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64593775/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com