Aurelia - 路由
路由是每个应用程序的重要组成部分。在本章中,您将学习如何在 Aurelia 框架中使用路由器。
步骤 1 - 创建页面
我们已经在前面的章节中创建了一个组件文件夹。如果您尚未创建它,则应将其放在 src 文件夹中。
C:\Users\username\Desktop\aureliaApp\src>mkdir components
在此文件夹中,我们将创建 home 和 about 目录。
C:\Users\username\Desktop\aureliaApp\src\components>mkdir home C:\Users\username\Desktop\aureliaApp\src\components>mkdir about
在 home 文件夹中,我们需要创建 view 和 view-model 文件。
C:\Users\username\Desktop\aureliaApp\src\components\home>touch home.js C:\Users\username\Desktop\aureliaApp\src\components\home>touch home.html
我们还需要 view 和 view-model 来用于 about 页面。
C:\Users\username\Desktop\aureliaApp\src\components\about>touch about.js C:\Users\username\Desktop\aureliaApp\src\components\about>touch about.html
注意 −您也可以手动创建上述所有文件夹。
第 2 步 - 页面
接下来,我们需要向我们创建的文件添加一些默认代码。
home.html
<template> <h1>HOME</h1> </template>
home.js
export class Home {}
about.html
<template> <h1>ABOUT</h1> </template>
about.js
export class About {}
步骤 3 - 路由器
我们将在 app.js 文件中为 路由器 创建 视图模型。
app.js
export class App { configureRouter(config, router) { config.title = 'Aurelia'; config.map([ { route: ['','home'], name: 'home', moduleId: './components/home/home', nav: true, title:'Home' }, { route: 'about', name: 'about', moduleId: './components/about/about', nav: true, title:'About' } ]); this.router = router; } }
我们的路由器视图将被放置在app.html中。
app.html
<template> <nav> <ul> <li repeat.for = "row of router.navigation"> <a href.bind = "row.href">${row.title}</a> </li> </ul> </nav> <router-view></router-view> </template>
当我们运行应用程序时,我们可以通过单击主页或有关链接来更改路线。