这可能是由于浏览器缓存旧文件版本所致。可以使用以下代码,通过向文件URL添加随机参数的方法解决该问题:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { HomeComponent } from './home/home.component';
import { AboutComponent } from './about/about.component';
const routes: Routes = [
{ path: '', redirectTo: 'home', pathMatch: 'full' },
{ path: 'home', component: HomeComponent },
{ path: 'about', component: AboutComponent }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {
constructor() {
// add random parameter to avoid old version file cached
const cacheBustingRandomNumber = Math.random().toString(36).substring(2, 15);
console.log('Cache busting random number:', cacheBustingRandomNumber);
sessionStorage.setItem('version', cacheBustingRandomNumber);
}
}
上述代码中向应用的根路径文件中加入了一个随机参数。这将导致浏览器不会将缓存的旧版本文件用于该网址,保证使用最新的代码文件。