前端技术 | NPM 包 ngx-breadcrumbs 使用教程

在前端开发中,我们经常需要在网站或应用中添加面包屑导航功能,以方便用户查看自己所处的位置。ngx-breadcrumbs 是一款基于 Angular 框架的 NPM 包,可以帮助我们快速简便地实现面包屑导航组件。

1. 安装

第一步是安装 ngx-breadcrumbs 包,我们可以通过 npm 命令来进行安装,具体如下:

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

需要注意的是,使用 ngx-breadcrumbs 需要在项目中引入 Angular 的核心模块 CommonModule。

在项目中添加 CommonModule 的步骤如下:

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

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

2. 使用方法

在项目中使用 ngx-breadcrumbs,我们首先需要在对应的路由配置中设置面包屑导航,具体如下:

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

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

在以上代码中,我们通过 data 属性中的 breadcrumb 字段来设置每个路由对应的面包屑导航标题,同时在 resolve 属性中添加 BreadcrumbsResolver 来让 ngx-breadcrumbs 自动获取面包屑导航数据。

接下来就是在组件中使用 ngx-breadcrumbs,我们需要通过以下代码获取面包屑导航数据和当前路由对象:

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

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

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

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

在以上代码中,我们通过 ActivatedRoute 和 Router 服务来获取当前路由对象,并通过注入 BreadcrumbsResolver 来获取面包屑导航数据,最终将数据赋值到组件中的变量中。

最后,在组件的 HTML 模板中通过 ngx-breadcrumbs 的指令来渲染面包屑导航组件:

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

以上代码中,我们使用了 Angular 中的 *ngIf 指令来判断当前是否存在面包屑导航数据,如果有则渲染面包屑导航 HTML 模板,同时使用 *ngFor 指令来遍历面包屑导航数据,最终通过 [routerLink] 属性来设置面包屑导航项的路由链接。

3. 示例代码

最后,我们提供一份 ngx-breadcrumbs 的使用示例代码供大家参考:

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

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

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

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

通过本篇文章的介绍和示例代码,相信大家已经掌握了如何使用 ngx-breadcrumbs 进行面包屑导航功能的实现。同时也希望大家能够在实践中不断学习和提高,进一步提高自身的前端开发能力。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60057ae681e8991b448eb6ce


猜你喜欢

  • npm 包 scylla-migration 使用教程

    介绍 scylla-migration 是一个使用 Node.js 编写的开源工具,它可以帮助开发人员快速轻松地进行 Cassandra 数据库迁移。该工具易于使用,同时具有高效且可扩展的功能,适用于...

    3 年前
  • npm 包 classy-decorator 使用教程

    Npm 包 classy-decorator 是一个用于 JavaScript、TypeScript 类装饰器的工具包,使用它可以轻松地在类上添加属性、方法和修饰符。

    3 年前
  • npm 包 create-react-app-fullstack 使用教程

    如果你是一名前端开发人员,并且想要快速使用 React 技术堆栈搭建一个全栈应用,那么 create-react-app-fullstack 这个 npm 包可能正好是你需要的。

    3 年前
  • npm包 @mesteche/react-socket使用教程

    简介 @mesteche/react-socket 是基于socket.io 实现的React Hooks的封装,通过使用该npm包可以轻松地在前端应用中实现实时通信功能。

    3 年前
  • npm 包 gulp-smartico 使用教程

    前言 在前端开发中,有许多重复性的工作,如图标处理。gulp-smartico 是一个提供了图标生成、压缩和精灵图生成等功能的 npm 包,可以有效地减轻前端开发人员的工作负担。

    3 年前
  • npm 包 terraform-ts 使用教程

    前言 Terraform 是一个用于创建,管理和版本控制基础设施的工具。如果你想在前端项目中使用 Terraform 进行基础设施管理,一种实现方式是使用 npm 包 terraform-ts。

    3 年前
  • npm 包 parcel-plugin-handlebars 使用教程

    在前端开发中,使用模板引擎来渲染页面是一个很常见的需求。Handlebars.js 是一个流行的 JavaScript 模板引擎,它允许开发者使用简单易懂的语法来创建复杂的视图。

    3 年前
  • npm 包 ng-push-notification 使用教程

    随着移动设备的普及,推送通知已经成为了现代互联网应用的重要组成部分。在前端开发中,我们经常会遇到需要使用推送通知的场景,比如消息通知、即时聊天等。 在 Angular 框架下,有一个非常实用的 npm...

    3 年前
  • npm 包 spatialhash-2d 使用教程

    介绍 在前端开发中,经常需要对空间进行处理、管理、查询等操作,而空间中的对象种类繁多,包括点、线、面、区域等等。这时一个高效的算法可以帮助我们快速地处理这些对象。其中最常用的算法之一就是空间哈希。

    3 年前
  • npm 包 gmap-dragdrop-react 使用教程

    背景 在前端开发中,使用谷歌地图是很常见的需求,但如果需要实现地图上的元素拖放功能,可能就需要借助一些插件或工具来实现。gmap-dragdrop-react npm 包就是一款能够在 React 中...

    3 年前
  • npm 包 di-google-map-react 使用教程

    前言 随着互联网的普及,网站和应用程序的交互变得越来越丰富。其中地图是一种非常重要的交互方式。Google Maps 是市面上一个著名的地图服务,现在开发者可以使用 di-google-map-rea...

    3 年前
  • npm 包 node-zookeeper-client-async 使用教程

    在前端开发过程中,经常需要处理分布式系统和分布式服务的情况。其中,ZooKeeper 是一个广泛使用的开源分布式协调服务,可以帮助我们处理分布式服务的监视和同步问题。

    3 年前
  • NPM 包 @futuregroup/webpack-custom-blocks 使用教程

    在前端开发中,webpack 是一个广泛使用的构建工具。@futuregroup/webpack-custom-blocks 是一个基于 webpack 的 NPM 包,用于构建自定义 webpack...

    3 年前
  • npm 包 laravel-homestead-windows-installer 使用教程

    介绍 laravel-homestead-windows-installer 是一个基于 npm 包的 Laravel Homestead Windows 版本安装工具,使得在 Windows 平台上...

    3 年前
  • npm包feathers-objection-pr-10使用教程

    简介 feathers-objection-pr-10是一个npm包,它是一个feathers服务和Objection ORM集成的插件。此插件为您的feathers应用程序提供Objection O...

    3 年前
  • npm 包 nelreina-utility-lib 使用教程

    简介 nelreina-utility-lib 是一个前端常用函数库,其中包含了许多实用的函数和工具,可以帮助我们完成一些常见的任务。它支持 npm 安装,并且可以在浏览器和 Node.js 环境下使...

    3 年前
  • npm 包 @tnsengimana/mongoose-dummy 使用教程

    在前端开发中,使用到数据库进行数据存储操作是非常常见的需求。而 mongoose 是一个运行在 Node.js 和浏览器中的 MongoDB 驱动程序,是非常受欢迎的数据建模工具。

    3 年前
  • npm 包 generator-apparena-widget 使用教程

    简介 generator-apparena-widget 是一个 npm 包,它用于创建可重用的 App-Arena 小部件。 App-Arena 是一个移动应用开发平台,它可以帮助开发人员快速开发出...

    3 年前
  • npm 包 gulp-modernizr-wezom 使用教程

    在现代 Web 开发中,前端技术日新月异,各种新型的浏览器和新特性不断涌现。这时候,我们需要一个工具来帮助我们检测浏览器的特性支持情况,帮助我们编写具备兼容性的代码。

    3 年前
  • npm 包 gulp-not-supported-file 使用教程

    在开发前端项目时,我们通常会使用 gulp 构建工具来进行代码自动化构建。而在 gulp 构建中,我们经常需要排除某些不被支持的文件进行编译,这时候就可以使用 npm 包 gulp-not-suppo...

    3 年前

相关推荐

    暂无文章