微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

管道“ IconsPipe”由多个NgModule声明-Nativescript / Angular

如何解决管道“ IconsPipe”由多个NgModule声明-Nativescript / Angular

请帮助我解决这些错误代码拆分(本机脚本/角度)在我的项目中无法正常工作:

src / app / shared / pipes / common / icons / icons.pipe.ts:7:14中的

ERROR-错误NG6007: 管道“ IconsPipe”由多个NgModule声明。

src / app / shared / pipes / common / common-pipes.module.ts:7:18 7个声明:[IconsPipe],

'IconsPipe'在NgModule'CommonPipesModule'的声明中列出。 src / app / shared / pipes / common / common-pipes.module.tns.ts:7:18

7条声明:[IconsPipe], NgModule“ CommonPipesModule”的声明中列出了“ IconsPipe”。

common-pipes.module.ts

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 {}

common-pipes.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],})
export class CommonPipesModule {}

app.module.tns.ts

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,NativeScriptCommonModule,NativeScriptUISideDrawerModule,NativeScriptUIListViewModule,NativeScriptRouterModule.forRoot(routes),ButtonModule,StartModule,CommonPipesModule,TranslateModule.forRoot({
      loader: {
        provide: TranslateLoader,useFactory: HttpLoaderFactory,deps: [HttpClient],},}),],providers: [providerDeclarations],bootstrap: [AppComponent],})
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","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'导入模块吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。