管道';IconsPipe';由多个NgModule声明-Nativescript/Angular
请帮我解决那个错误。代码拆分(nativescript/angular)在我的项目中无法正常工作: src/app/shared/pipes/common/icons/icons.pipe.ts:7:14中出错-错误NG6007: 管道“IConPipe”由多个NgModule声明 src/app/shared/pipes/common/common pipes.module.ts:7:18 7声明:[IconsPipe] “IConPipe”列在NgModule“CommonPipesModule”的声明中。 src/app/shared/pipes/common/common pipes.module.tns.ts:7:18 7声明:[IconsPipe], “IConPipe”列在NgModule“CommonPipesModule”的声明中 公共管道.module.ts管道';IconsPipe';由多个NgModule声明-Nativescript/Angular,nativescript,angular2-nativescript,nativescript-angular,Nativescript,Angular2 Nativescript,Nativescript Angular,请帮我解决那个错误。代码拆分(nativescript/angular)在我的项目中无法正常工作: src/app/shared/pipes/common/icons/icons.pipe.ts:7:14中出错-错误NG6007: 管道“IConPipe”由多个NgModule声明 src/app/shared/pipes/common/common pipes.module.ts:7:18 7声明:[IconsPipe] “IConPipe”列在NgModule“CommonPipesModu
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { IconsPipe } from './icons/icons.pipe';
@NgModule({
declarations: [IconsPipe],
imports: [CommonModule],
exports: [IconsPipe],
})
export class CommonPipesModule {}
通用管道.module.tns.ts
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
import { NativeScriptCommonModule } from '@nativescript/angular';
import { IconsPipe } from './icons/icons.pipe';
@NgModule({
declarations: [IconsPipe],
imports: [NativeScriptCommonModule],
schemas: [NO_ERRORS_SCHEMA],
exports: [IconsPipe],
})
export class CommonPipesModule {}
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
import {
NativeScriptCommonModule,
NativeScriptHttpClientModule,
NativeScriptModule,
NativeScriptRouterModule,
} from '@nativescript/angular';
import { HttpClient } from '@angular/common/http';
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { NativeScriptUIListViewModule } from 'nativescript-ui-listview/angular';
import { NativeScriptUISideDrawerModule } from 'nativescript-ui-sidedrawer/angular';
import { AppComponent } from '@src/app/app.component';
import { StartModule } from '@src/app/start/start.module';
import { routes, providerDeclarations } from './app.common';
import { CommonPipesModule } from './shared/pipes/common/common-pipes.module';
import { ButtonModule } from './shared/forms/button/button.module';
import { HeaderComponent } from './layout/header/header.component';
import { LayoutComponent } from './layout/layout.component';
// AoT requires an exported function for factories
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http, '/assets/i18n/', '.json');
}
@NgModule({
declarations: [AppComponent, LayoutComponent, HeaderComponent],
imports: [
NativeScriptModule,
NativeScriptHttpClientModule,
NativeScriptCommonModule,
NativeScriptUISideDrawerModule,
NativeScriptUIListViewModule,
NativeScriptRouterModule.forRoot(routes),
ButtonModule,
StartModule,
CommonPipesModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient],
},
}),
],
providers: [providerDeclarations],
bootstrap: [AppComponent],
schemas: [NO_ERRORS_SCHEMA],
})
export class AppModule {}
app.module.tns.ts
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
import { NativeScriptCommonModule } from '@nativescript/angular';
import { IconsPipe } from './icons/icons.pipe';
@NgModule({
declarations: [IconsPipe],
imports: [NativeScriptCommonModule],
schemas: [NO_ERRORS_SCHEMA],
exports: [IconsPipe],
})
export class CommonPipesModule {}
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
import {
NativeScriptCommonModule,
NativeScriptHttpClientModule,
NativeScriptModule,
NativeScriptRouterModule,
} from '@nativescript/angular';
import { HttpClient } from '@angular/common/http';
import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { NativeScriptUIListViewModule } from 'nativescript-ui-listview/angular';
import { NativeScriptUISideDrawerModule } from 'nativescript-ui-sidedrawer/angular';
import { AppComponent } from '@src/app/app.component';
import { StartModule } from '@src/app/start/start.module';
import { routes, providerDeclarations } from './app.common';
import { CommonPipesModule } from './shared/pipes/common/common-pipes.module';
import { ButtonModule } from './shared/forms/button/button.module';
import { HeaderComponent } from './layout/header/header.component';
import { LayoutComponent } from './layout/layout.component';
// AoT requires an exported function for factories
export function HttpLoaderFactory(http: HttpClient) {
return new TranslateHttpLoader(http, '/assets/i18n/', '.json');
}
@NgModule({
declarations: [AppComponent, LayoutComponent, HeaderComponent],
imports: [
NativeScriptModule,
NativeScriptHttpClientModule,
NativeScriptCommonModule,
NativeScriptUISideDrawerModule,
NativeScriptUIListViewModule,
NativeScriptRouterModule.forRoot(routes),
ButtonModule,
StartModule,
CommonPipesModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient],
},
}),
],
providers: [providerDeclarations],
bootstrap: [AppComponent],
schemas: [NO_ERRORS_SCHEMA],
})
export class AppModule {}
tsconfig
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"module": "ESNext",
"target": "es2015",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"noEmitOnError": true,
"skipLibCheck": true,
"lib": [
"es2017",
"dom",
"es6"
],
"baseUrl": ".",
"paths": {
"@src/*": [
"src/*.android.ts",
"src/*.ios.ts",
"src/*.tns.ts",
"src/*.web.ts",
"src/*.ts"
],
}
}
}
tsconfig.tns
{
"extends": "./tsconfig.json",
"compilerOptions": {
"module": "ESNext",
"moduleResolution": "node",
"experimentalDecorators": true,
"skipLibCheck": true,
"baseUrl": ".",
"paths": {
"@src/*": [
"src/*.tns.ts",
"src/*.ts"
]
}
},
"files": [
"src/main.tns.ts"
]
}
package.json
"dependencies": {
"@angular/animations": "~10.2.0",
"@angular/cdk": "^10.2.6",
"@angular/common": "~10.2.0",
"@angular/compiler": "~10.2.0",
"@angular/core": "~10.2.0",
"@angular/fire": "^6.0.3",
"@angular/forms": "~10.2.0",
"@angular/material": "^10.2.6",
"@angular/platform-browser": "~10.2.0",
"@angular/platform-browser-dynamic": "~10.2.0",
"@angular/router": "~10.2.0",
"@nativescript/angular": "~10.1.7",
"@nativescript/core": "~7.0.12",
"@nativescript/firebase": "^11.0.0",
"@nativescript/theme": "~3.0.0",
"@ngx-translate/core": "^13.0.0",
"@ngx-translate/http-loader": "^6.0.0",
"core-js": "^3.6.5",
"firebase": "^8.0.0",
"nativescript-gif": "^5.0.0",
"nativescript-sound": "^1.0.4",
"nativescript-texttospeech": "^3.0.1",
"nativescript-toasty": "^2.0.1",
"nativescript-ui-chart": "^8.0.2",
"nativescript-ui-listview": "^9.0.4",
"nativescript-ui-sidedrawer": "9.0.3",
"ngx-custom-validators": "^10.0.0",
"npm-check-updates": "^9.2.3",
"reflect-metadata": "~0.1.13",
"rxjs": "~6.6.3",
"tslib": "2.0.3",
"zone.js": "~0.11.2"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.1002.0",
"@angular/cli": "~10.2.0",
"@angular/compiler-cli": "~10.2.0",
"@nativescript/android": "7.0.1",
"@nativescript/schematics": "^10.1.0",
"@nativescript/tslint-rules": "~0.0.5",
"@nativescript/webpack": "~3.0.8",
"@types/jasmine": "~3.6.0",
"@types/jasminewd2": "~2.0.8",
"@types/node": "^14.14.5",
"@types/stripe-v3": "^3.1.21",
"codelyzer": "^6.0.1",
"jasmine-core": "~3.6.0",
"jasmine-spec-reporter": "~6.0.0",
"karma": "~5.2.3",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage-istanbul-reporter": "~3.0.3",
"karma-jasmine": "~4.0.1",
"karma-jasmine-html-reporter": "^1.5.4",
"node-sass": "^4.14.1",
"protractor": "~7.0.0",
"ts-node": "~9.0.0",
"tslint": "~6.1.3",
"typescript": "~4.0.5"
}
更新
目前看来,问题在于@src导入。如果我改变,例如:
从“@src/app/shared/pipes/common/common pipes.module”导入{CommonPipesModule}
到
从“./pipes/common/common pipes.module”导入{CommonPipesModule}
那它就正常工作了。您知道如何修复该问题,以便能够导入带有“@src”的模块吗?您的tsconfig.tns.json是什么样子的?@agritton添加到description中,5个月来都存在相同的问题。你找到解决办法了吗?@miladfm不幸的是没有。我可以看到导入“@src”或“../”有问题,但我不明白为什么以及到底是什么问题:/tsconfig.tns.json看起来像什么?@agritton补充到描述中。我在5个月内都遇到了同样的问题。你找到解决办法了吗?@miladfm不幸的是,没有。我可以看出导入“@src”或“../”有问题,但我不明白为什么以及到底是什么问题:/