آفلاین
user-avatar

استفاده تو در تو از ماژول های در انگولار

2 سال پیش
توسط محمد رعنایی نظام دوست آپدیت شد
آفلاین
user-avatar
محمد رعنایی نظام دوست ( 100 تجربه )
2 سال پیش
تخصص : توسعه دهنده فرانت اند

سلام دوستان
خسته نباشید

من یک اپ با angular cli ایجاد کردم

ng new ng-panel --routing --style=scss

بعد داخل اون ، یک ماژول و یک کامپوننت با یک نام ایجاد کردم

ng generate module auth --router
ng generate component auth

بعد داخل app-routing.motule.ts یک روت جدید به شکل زیر درست کردم

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { patch } from 'webdriver-js-extender';

const routes: Routes = [
  {
    path: 'auth',
    loadChildren: 'app/auth/auth.module#AuthModule'
  }
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule]
})
export class AppRoutingModule { }

وقتی پروژه رو با ng serve اجرا میکنم دفعه اول که کامپایل میشه با خطا زیر مواجه میشم

ERROR in Could not resolve module app/auth/auth.module relative to /E/ng-panel/src/app/app-routing.module.ts

اما وقتی یه بار پروژه رو save میکنم و دوباره به صورت اتومات پروژه کامپایل میشه خطا رفع میشه
موضوع دیگه اینکه وقتی میخوام ng build بگیرم هم با همین خطا مواجه میشم و چون دیگه اونجا نمیتونم save کنم تا اتوماتیک پروژه کامپایل بشه ، کلا نمیتونم خروجی نهایی بگیرم از پروژه ...

خیلی سرچ کردم اما به هیچ جوابی نرسیدم
@hesammousavi
پیشاپیش ممنون از راهنماییتون

بهترین پاسخ انتخاب شده توسط محمد رعنایی نظام دوست
آفلاین
user-avatar

سلام
مشکل در آدرس دهی بود که باید به شکل زیر داده میشد

const routes: Routes = [
  {
    path: 'auth',
    loadChildren: './auth/auth.module#AuthModule'
  }
];
آنلاین
user-avatar
حسام موسوی ( 382929 تجربه )
2 سال پیش
تخصص : طراح و برنامه نویس

بجای اینکه اینطوری فراخونی کنید

const routes: Routes = [
  {
    path: 'auth',
    loadChildren: 'app/auth/auth.module#AuthModule'
  }
];

بنظرم این رو امتحان کنید

import { AuthModule } from 'yourPath';

        // ...

        const routes: Routes = [
  {
    path: 'auth',
    loadChildren: AuthModule 
  }
];
آفلاین
user-avatar
محمد رعنایی نظام دوست ( 100 تجربه )
2 سال پیش
تخصص : توسعه دهنده فرانت اند

سلام
مشکل در آدرس دهی بود که باید به شکل زیر داده میشد

const routes: Routes = [
  {
    path: 'auth',
    loadChildren: './auth/auth.module#AuthModule'
  }
];
برای ارسال پاسخ باید وارد سایت شوید