Bläddra i källkod

feat: fix app comp standalone ionRouterOutlet

ryanemax 3 månader sedan
förälder
incheckning
35ca1c7ac6

+ 0 - 5
deploy.ps1

@@ -12,11 +12,6 @@ obsutil rm obs://nova-cloud/dev/live -r -f -i=XSUWJSVMZNHLWFAINRZ1 -k=P4TyfwfDov
 # 同步文件目录
 obsutil sync ./dist/live-app/browser obs://nova-cloud/dev/live  -i=XSUWJSVMZNHLWFAINRZ1 -k=P4TyfwfDovVNqz08tI1IXoLWXyEOSTKJRVlsGcV6 -e="obs.cn-south-1.myhuaweicloud.com" -acl=public-read
 
-# 复制默认首页至项目路由(解决路径导航到错误页面问题)
-# 例如:https://app.fmode.cn/dev/live/crm/test 匹配项目路由 /crm/test 需要放置一个默认页面
-obsutil cp ./dist/live-app/browser/index.html obs://nova-cloud/dev/live/crm/test/index.html  -i=XSUWJSVMZNHLWFAINRZ1 -k=P4TyfwfDovVNqz08tI1IXoLWXyEOSTKJRVlsGcV6 -e="obs.cn-south-1.myhuaweicloud.com" -acl=public-read
-
-
 # 授权公开可读
 obsutil chattri obs://nova-cloud/dev/live -r -f -i=XSUWJSVMZNHLWFAINRZ1 -k=P4TyfwfDovVNqz08tI1IXoLWXyEOSTKJRVlsGcV6 -e="obs.cn-south-1.myhuaweicloud.com" -acl=public-read
 

+ 4 - 1
projects/live-app/src/app/app.component.ts

@@ -1,11 +1,14 @@
 import { Component } from '@angular/core';
 import { RouterOutlet } from '@angular/router';
 import { IonicModule } from '@ionic/angular';
+import { IonApp, IonRouterOutlet } from '@ionic/angular/standalone';
 import Parse from 'parse';
 @Component({
   selector: 'app-root',
   standalone: true,
-  imports: [IonicModule],
+  imports: [
+    IonApp,IonRouterOutlet
+  ],
   templateUrl: './app.component.html',
   styleUrl: './app.component.scss',
 })

+ 6 - 2
projects/live-app/src/app/app.config.ts

@@ -1,10 +1,14 @@
 import { ApplicationConfig, importProvidersFrom, provideZoneChangeDetection } from '@angular/core';
 import { FormsModule } from '@angular/forms';
-import { provideRouter } from '@angular/router';
+import { provideRouter, RouteReuseStrategy } from '@angular/router';
 import { provideIonicAngular, IonicRouteStrategy } from '@ionic/angular/standalone';
 import { routes } from './app.routes';
 import { provideHttpClient } from '@angular/common/http';
 
 export const appConfig: ApplicationConfig = {
-  providers: [provideZoneChangeDetection({ eventCoalescing: true }),provideIonicAngular({ mode: 'ios' }), provideRouter(routes),importProvidersFrom(FormsModule),provideHttpClient()]
+  providers: [
+    provideZoneChangeDetection({ eventCoalescing: true }),provideIonicAngular({ mode: 'ios' }), 
+    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
+    provideRouter(routes),
+    importProvidersFrom(FormsModule),provideHttpClient()]
 };

+ 4 - 0
projects/live-app/src/app/app.routes.ts

@@ -4,6 +4,10 @@ import { AuthGuard } from '../services/auth.guard';
 
 export const routes: Routes = [
   { path: '', redirectTo:'tabs', pathMatch: "full",}, // 默认跳转到 ''
+  {
+    path: 'test',
+    loadComponent:()=> import('../modules/test/page-test/page-test.component').then((mod) => mod.PageTestComponent),
+  },
   {
     path: 'login',
     loadComponent:()=> import('../moduls/login/login.component').then((mod) => mod.LoginComponent),

+ 2 - 0
projects/live-app/src/modules/test/page-test/page-test.component.html

@@ -0,0 +1,2 @@
+<p>page-test works!</p>
+<h1>test</h1>

+ 0 - 0
projects/live-app/src/modules/test/page-test/page-test.component.scss


+ 23 - 0
projects/live-app/src/modules/test/page-test/page-test.component.spec.ts

@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { PageTestComponent } from './page-test.component';
+
+describe('PageTestComponent', () => {
+  let component: PageTestComponent;
+  let fixture: ComponentFixture<PageTestComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [PageTestComponent]
+    })
+    .compileComponents();
+
+    fixture = TestBed.createComponent(PageTestComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});

+ 12 - 0
projects/live-app/src/modules/test/page-test/page-test.component.ts

@@ -0,0 +1,12 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-page-test',
+  standalone: true,
+  imports: [],
+  templateUrl: './page-test.component.html',
+  styleUrl: './page-test.component.scss'
+})
+export class PageTestComponent {
+
+}