点击 cart 图标之后,准备判断加载 Spartacus 的 cart 页面,还是加载 Commerce Cloud Accelerator 的页面:
传进来的 route 参数:cart
:
黄色部分为 url 判断函数体:
icludePatterns
和 excludePatterns
就是我们在 AppModule 里定义的配置:
matched 为 true:
准备重定向到 cart
页面去:
location 赋值为:electronics-spa/en/USD/cart
浏览器里新的 url:http://localhost:4000/electronics-spa/en/USD/
如果我们使用 CLI 加上 --routing flag 创建 Angular 应用,那么生成的 AppModule 里,会自动导入 AppRoutingModule:
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppRoutingModule } from './app-routing.module'; // CLI imports AppRoutingModule import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, AppRoutingModule // CLI adds AppRoutingModule to the AppModule's imports array ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
window.location.href is not a method, it’s a property that will tell you the current URL location of the browser. Changing the value of the property will redirect the page.
更改 window.location.href
属性,会导致页面重定向。
而 window.open 会打开一个新窗口:
window.location.href = ‘http://www.google.com’; //Will take you to Google.
window.open() example: window.open(‘http://www.google.com’); //This will open Google in a new window.
angular 里的使用案例。