Я получаю ошибку машинописного текста при создании apk

Ошибка при сборке, но в браузере все работает нормально.

typescript error Type BillPage in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.ts is part of the declarations of 2 modules: AppModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/app/app.module.ts and BillPageModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.module.ts! Please consider moving BillPage in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.ts to a higher module that imports AppModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/app/app.module.ts and BillPageModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.module.ts. You can also create a new NgModule that exports and includes BillPage in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.ts then import that NgModule in AppModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/app/app.module.ts and BillPageModule in C:/Users/GTP SYSTEM 2/Projects/Ionic/dial2us/src/pages/bill/bill.module.ts.

Мой файл bill.module.ts:

import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { BillPage } from './bill';

@NgModule({
  declarations: [
    BillPage,
  ],
  imports: [
    IonicPageModule.forChild(BillPage),
  ],
})
export class BillPageModule {}

Файл app.module.ts:

import { BrowserModule } from '@angular/platform-browser';
import { FormsModule }   from '@angular/forms';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';

import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';

import { MyApp } from './app.component';

import { HttpModule } from '@angular/http';
import { HttpClientModule} from '@angular/common/http';

import { LoginPage } from '../pages/login/login';
import { HomePage } from '../pages/home/home';
import { BillPage } from '../pages/bill/bill';
import { ListPage } from '../pages/list/list';

import { RegisterPage } from '../pages/register/register';
import { ForgotPassPage } from '../pages/forgot-pass/forgot-pass';
import { BillDetailsPage } from '../pages/bill-details/bill-details';

import { ComplaintListPage } from '../pages/complaint-list/complaint-list';
import { RegisterComplaintPage } from '../pages/register-complaint/register-complaint';
import { ComplaintDetailsPage } from '../pages/complaint-details/complaint-details';

// import { AuthServiceProvider } from '../providers/auth-service/auth-service';

@NgModule({
  declarations: [
    MyApp,
    LoginPage,
    HomePage,
    ListPage,
    RegisterPage,
    ForgotPassPage,
    BillPage,
    BillDetailsPage,
    ComplaintListPage,
    RegisterComplaintPage,
    ComplaintDetailsPage
  ],
  imports: [
    BrowserModule,
    FormsModule,
    HttpClientModule,
    HttpModule,
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    HomePage,
    ListPage,
    LoginPage,
    RegisterPage,
    ForgotPassPage,
    BillPage,
    BillDetailsPage,
    ComplaintListPage,
    RegisterComplaintPage,
    ComplaintDetailsPage

  ],
  providers: [
    StatusBar,
    SplashScreen,
    {provide: ErrorHandler, useClass: IonicErrorHandler},
  ]
})
export class AppModule {}

Вам необходимо вставить минимальный воспроизводимый примерздесь не внешний связанный код

Suraj Rao 11.04.2018 12:39

Конечно, я отредактирую.

Sazzad Hussain 11.04.2018 12:41

@SurajRao: Пожалуйста, проверьте

Sazzad Hussain 11.04.2018 12:46

@SazzadHussain вы импортируете страницу счета в app.module.ts

Abinesh Joyel 11.04.2018 13:00

вам все равно нужно включить app.module.ts в свой вопрос ..

Suraj Rao 11.04.2018 13:06

@SurajRao: брат, я обновил это.

Sazzad Hussain 11.04.2018 13:09

ну .. если вы загружаетесь лениво, вам не нужно импортировать и включать страницы в app.module.ts. Удалить их

Suraj Rao 11.04.2018 13:09

@AbineshJoyel: Да

Sazzad Hussain 11.04.2018 13:09

@SurajRao Я не использую отложенную загрузку.

Sazzad Hussain 11.04.2018 13:13

да вы когда используете IonicPageModule и IonicPage

Suraj Rao 11.04.2018 13:15

Позвольте нам продолжить обсуждение в чате.

Sazzad Hussain 11.04.2018 13:16
1
11
195
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Поскольку вы не используете lazy-load:

  • Вам даже не нужен bill.module, вы можете полностью удалить его, и он по-прежнему работает

  • Затем удалите все ссылки на bill.module.ts, так как вы его удалили.

Общий случай, когда вы получаете эту ошибку, - это объявление component в более чем одном модуле,

Для этого может быть решение, что billPages уже находится в app.module, так как вы также используете его во входных компонентах, нет необходимости снова объявлять в bill.module.ts.

Ваш файл bill.module.ts изменится на:

import { NgModule } from '@angular/core';
import { BillPage } from './bill';

@NgModule({
  declarations: [

  ],
  imports: [

  ],
})
export class BillPageModule {}

Поскольку в нем нет никакой пользы, вы можете удалить его, как я сказал ранее.

На самом деле ... если OP не намерен использовать ленивую загрузку, нет необходимости в bill.module.ts вообще

Suraj Rao 11.04.2018 13:16

да, тогда, если он не использует, он может удалить его, как я уже упоминал в ответе.

Sravan 11.04.2018 13:18

@Sazzad Hussain, отредактировал мой ответ, чтобы охватить все сценарии.

Sravan 11.04.2018 13:33

@Sravan Большое спасибо.

Sazzad Hussain 12.04.2018 06:03

@SazzadHussain, вы можете принять мой ответ, если сочтете его полезным /.

Sravan 12.04.2018 07:06

@Sravan: Готово :)

Sazzad Hussain 12.04.2018 07:18

Другие вопросы по теме