#angular #typescript #routes #nrwl-nx
#angular #typescript #маршруты #nrwl-nx
Вопрос:
Я только что сгенерировал новый проект angular с последней версией рабочей области nrwl. Я создал простой экран входа, на котором вы можете выполнить вход. Прямо сейчас нет проверки, я просто хочу переключить страницу при нажатии кнопки. Но моя проблема начинается с этого.
URL меняется на localhost: 4200 / dashboard при нажатии кнопки. Но мой компонент не отображается, с маршрутизатором-выходом все работает. Я поискал в сети и добавил все, что мне нужно было сделать, в свой app-routing-module и ts. Я думаю, что это небольшая ошибка, но я не смог ее найти.
они выглядят следующим образом:
Приложение-Модуль маршрутизации:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {DashboardComponentComponent} from "../../../../libs/moniesta-dashboard/src/lib/dashboard-component/dashboard-component.component";
const routes: Routes = [
{path: 'dashboard', component: DashboardComponentComponent}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule],
})
export class AppRoutingModule { }
Приложение-модуль:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NbThemeModule, NbLayoutModule } from '@nebular/theme';
import { NbEvaIconsModule } from '@nebular/eva-icons';
import { AppRoutingModule } from './app-routing.module';
import {MoniestaAuthorisationModule} from "@moniesta/moniesta-authorisation";
import {MoniestaDashboardModule} from "@moniesta/moniesta-dashboard";
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule, BrowserAnimationsModule, NbThemeModule.forRoot({ name: 'default' }),
NbLayoutModule,
NbEvaIconsModule,
AppRoutingModule,
MoniestaAuthorisationModule,
MoniestaDashboardModule],
providers: [],
bootstrap: [AppComponent],
})
export class AppModule {}
Вход-ts:
@Component({
selector: 'moniesta-login-component',
templateUrl: './login-component.component.html',
styleUrls: ['./login-component.component.scss']
})
export class LoginComponentComponent implements OnInit {
userName = new FormControl('');
password = new FormControl('');
constructor(
private router: Router, private route: ActivatedRoute
) { }
ngOnInit(): void {
}
loginValidation(){
this.router.navigate(['dashboard']);
}
}
Комментарии:
1. Не могли бы вы пояснить, что вы имеете в виду под этим:
But my component is not rendered, with router-outlet everything works
. Это работает, если у вас есть маршрутизатор-розетка? Вам всегда будет нужен маршрутизатор-розетка, если вы используете маршрутизацию?2. не могли бы вы создать stackblitz, чтобы было легко определить, в чем заключается ваша проблема
3. Я предполагаю, что этот компонент панели мониторинга является частью модуля MoniestaDashboardModule, если это так, пожалуйста, убедитесь, что вы экспортируете этот компонент.