npm 包 angular2-rotas 使用教程

阅读时长 10 分钟读完

介绍

Angular2-rotas是一个简单易用的Angular2路由管理器。它允许您在应用程序中创建和管理路由,使您的应用程序具有良好的组织结构和易于维护的代码。

安装

您可以使用 npm 命令来安装 angular2-rotas,只需在你的项目根目录下输入:

npm install angular2-rotas --save

使用

添加模块依赖

要使用 angular2-rotas,我们需要在我们的模块中添加依赖。打开您的 Angular2 Module 文件,添加以下代码:

-- -------------------- ---- -------
------ - -------- - ---- -----------------
------ -------- ---- -------

-----------
  ------
  -------- -
    ---------
    ------
  --
  ------
--
------ ----- --------- - -

创建路由数组

创建您的路由数组。打开您的路由文件,添加以下代码:

路由数组中,每一个对象代表一个路由路径,其中我们需要满足一下三个要点:

  1. path —— 表示路由的 URL 地址。
  2. component —— 路由对应的组件名称。
  3. pathMatch-设置路由路径的匹配规则,可以设置为'prefix'或'full',用于匹配路由路径。

在 Component 中加入 Router

当路由导航触发时,您需要使用 router 对象来加载组件。为了使用该路由对象,您需要导入该对象:

import { Router } from '@angular/router'

接下来要注入 Router 对象。在组件构造函数中加入以下代码:

constructor(private router: Router) { }

在构造函数中,我们注入了路由对象,现在我们可以在组件中使用路由对象进行路由导航。

触发路由导航

使用以下代码从一个组件导航到另一个组件 中:

this.router.navigate(['/path']);

例如,在您的应用中,在 User 组件中从列表页导航到编辑页:

this.router.navigate(['/user/edit', id]);

在新窗口中打开链接:

window.open('/path', '_blank');

路由链接

显示路由链接,只需使用以下代码:

当用户单击该链接时,路由会自动导航到相应的组件。

示例代码

以下是一个用 Angular2-rotas 实现的简单路由示例代码:

app.module.ts

-- -------------------- ---- -------
------ - -------- - ---- -----------------
------ - ------------- - ---- ----------------------------
------ - -------- - ---- ----------------
------ - ------------ - ---- ------------------
------ - ------------ - ---- ------------------
------ - ------------- - ---- ------------------------
------ - ------------- - ---- ------------------------
------ - ----------------- - ---- -----------------------------
------ - ----------------- - ---- -----------------------------
------ - ------------ - ---- ----------------------

-----------
  ------------- -
    -------------
    --------------
    --------------
    ------------------
    ------------------
    ------------
  --
  -------- -
    --------------
    -------------------
    ----------------------
      - ----- ------- ---------- ------------- --
      - ----- ------- ---------- --------------
        --------- -
          - ----- --- ---------- ----------------- --
          - ----- ----------- ---------- ----------------- -
        -
      --
      - ----- --- ----------- -------- ---------- ------ --
      - ----- ----- ----------- -------- ---------- ------ -
    --
  --
  ---------- ---
  ---------- --------------
--
------ ----- --------- - -

user.component.html

list.component.ts

-- -------------------- ---- -------
------ - ---------- ------ - ---- ----------------
------ - ------ - ---- ------------------
------ - ----------- - ---- ------------------
------ - ---- - ---- ----------------

------------
  --------- ----------------
  --------- -
    -------
      ----
        -----------
        -------------
        --------------
        ----------------
      -----
      --- ----------- ---- -- -------
        --------------------
        ----------------------
        -----------------------
        ----
          ------- -----------------------------------------
          ------- ---------------------------------------------
        -----
      -----
    --------
  --
  ------- ----
--
------ ----- ----------------- ---------- ------ -
  ------ -------
  ------------------- ------------ ------------ ------- ------- ------- - -
  ----------- ---- -
    ---------------------------
      ----------- -- ---------- - -------
  -
  ------------ -------- ---- -
    ----------------------------------- -----
  -
  -------------- -------- ---- -
    -------------------------------
      -------- -- -
        ---------- - ---------------------- -- ------- --- ----
      ---
  -
-

edit.component.ts

-- -------------------- ---- -------
------ - ---------- ------ - ---- ----------------
------ - --------------- ------- ------ - ---- ------------------
------ - ----------- - ---- ------------------
------ - ---- - ---- ----------------

------------
  --------- ----------------
  --------- -
    -------- ---------
    ----- ----------------------
      --------------------
      ------ ----------------------- ------------
      ---------------------
      ------ ------------------------ -------------
      ------- ---------------------------
      ------- ------------- --------------------------------------
    -------
  --
  ------- ----
--
------ ----- ----------------- ---------- ------ -
  ----- ---- - --- -------
  ------------
    ------- ------------ ------------
    ------- ------ ---------------
    ------- ------- ------
  - - -
  ----------- ---- -
    -----------------
      ------------------- ------- -- ----------------------------------------
      --------------- -- -
        -- ------ -
          --------- - -----
        - ---- -
          --------------------------------
        -
      ---
  -
  ----------- ---- -
    ------------------------------------
      -------- -- ---------------------------------
  -
  ------------- ---- -
    --------------------------------
  -
-

总结

Angular2-rotas 是一个非常方便的路由管理器,在增强您的 Angular2 应用程序中大有作为。希望这篇文章对您有所帮助,并且现在您能够使用 Angular2-rotas 轻松地实现路由导航。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600567cf81e8991b448e4094

纠错
反馈