npm 包 bem-helpers 使用教程

简介

bem-helpers 是一个针对块级修饰符(Block Element Modifier,简称 BEM)标准的 JavaScript 库,为开发者提供了一组有用的 BEM 功能。

BEM 是最常用的 HTML 和 CSS 的命名方式之一。它把 HTML 元素分类成块(block)、元素(element)和修饰符(modifier)三种元素,使得页面更加有结构性和可读性。bem-helpers 对 BEM 命名方式进行了封装,让开发者可以更加方便地在 JavaScript 中使用 BEM。

安装

bem-helpers 可以通过 npm 安装,使用以下命令:

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

其中 --save 参数是将包信息写入 dependencies 栏。

使用

bem-helpers 包含了一些方法,用于快速生成 BEM 类名:

setBlock(blockName: string, attrs?: object): string

该方法输出一个块级的 BEM 类名字符串。其中,第一个参数是块名,第二个参数是属性对象。例如:

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

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

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

输出了 example-block example-block_mode_normal。其中,example-block 是块的基本类名,example-block_mode_normal 是类名的修饰符,attrs 对象映射为 BEM 类名。

setElem(blockName: string, elemName: string, attrs?: object): string

该方法用于生成一个带有元素的 BEM 类名字符串。例如:

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

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

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

输出了 example-block__example-elem example-block__example-elem_size_medium。其中,example-block__example-elem 是包含元素的 BEM 基本类名,example-block__example-elem_size_medium 是带有修饰符的 BEM 类名。

setElemMod(blockName: string, elemName: string, modName: string, modValue: string): string

该方法用于生成一个带有元素修饰符的 BEM 类名字符串。例如:

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

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

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

输出了 example-block__example-elem example-block__example-elem_size_medium。其中,example-block__example-elem 是包含元素的 BEM 基本类名,example-block__example-elem_size_medium 是带有修饰符的 BEM 类名。

setBlockMod(blockName: string, modName: string, modValue: string): string

该方法用于生成带有块级修饰符的 BEM 类名字符串。例如:

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

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

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

输出了 example-block example-block_mode_normal。其中,example-block 是块的基本类名,example-block_mode_normal 是带有块级修饰符的 BEM 类名。

总结

bem-helpers 提供了一组有用的 BEM 功能,方便开发者在 JavaScript 中生成 BEM 类名。这篇文章介绍了 bem-helpers 包含的API,并附带了相应的示例代码。希望这篇文章对你有所启发,可以帮助你更好地使用 bem-helpers。

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


猜你喜欢

  • npm包material-icon-convert使用教程

    前言 在前端开发中,我们常常需要使用各种美观的图标。material-icon-convert是一个能够将谷歌官方Material Design图标库中的图标快速转换为SVG格式的工具。

    3 年前
  • npm包 vue-modal-customize 使用教程

    简介 Vue.js 是一个渐进式JavaScript 框架,通过组合不同的特性和库,Vue.js 可以轻松地构建现代化的Web应用程序。而 npm 则是整个JavaScript生态系统中的一个奇点,n...

    3 年前
  • npm 包 dominos-canada 使用教程

    介绍 dominos-canada 是 npm 上的一个 Node.js 模块,作用是帮助 Node.js 开发者调用加拿大 Domino's Pizza 网站的 API,从而实现在线下单、获取订单状...

    3 年前
  • npm 包 @b-flower/bdn-ref 使用教程

    npm 包 @b-flower/bdn-ref 是一个前端类的 JavaScript 库,旨在提供简单易用的数据参考工具,可以用于开发数据分析应用或者其他需要进行数据参考的情况。

    3 年前
  • npm 包 egg-mongoose-v5 使用教程

    在 Node.js 开发中,mongoose 是一个常用的 MongoDB ODM 库,使用起来非常方便。而 egg-mongoose-v5 是一个基于 Egg.js 框架的 mongoose 插件,...

    3 年前
  • npm 包 mef-react-treebeard 使用教程

    一、前言 在前端开发过程中,操作树形结构的需求非常常见。但是随着数据量不断增长,对于树形结构的操作就越发具有挑战性。为了解决这个问题,社区中出现了许多帮助我们处理树形结构的工具和库。

    3 年前
  • npm 包 validcardglobal 使用教程

    在前端开发中,我们常常需要验证用户输入的信用卡号码是否合法。而 npm 上的 validcardglobal 包可以帮助我们完成这个任务。该包使用 Luhn 算法检验信用卡号码的合法性,并可以检测主要...

    3 年前
  • npm 包 chipcaco 使用教程

    什么是 chipcaco chipcaco 是一个基于 SVG 技术开发的一个可爱的芯片卡片组件。它提供了一种非常方便和简单的方式来创建芯片风格的卡片,而且它非常轻量化。

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

    React-Tracker 是一个用于在 React 应用程序中进行高级事件跟踪的 npm 包。它可以帮助您在 React 应用程序中实现数据跟踪,以便更好地了解用户的行为和需要。

    3 年前
  • npm包digitial-atoms使用教程

    Digital Atoms是一个通用的前端组件库,包含多种基础组件和工具,便于快速搭建网页应用。它已经被打包成npm包,并提供了详细的使用文档。在本篇文章中,我们将介绍如何使用dgitals-atom...

    3 年前
  • npm 包 drag-drop-angular2 使用教程

    在前端开发中,实现拖放(drag-and-drop)的功能是相对常见的场景,特别是在处理用户交互时,可以增加更多的趣味性和易用性。drag-drop-angular2 是一个 npm 包,可以让开发者...

    3 年前
  • NPM包extract-url使用教程

    介绍 extract-url是一个可将HTML代码中的URL提取出来的NPM包。使用这个包可以很方便的从HTML代码中提取出需要的URL,便于后续的处理操作。 安装 使用npm包管理工具可以快速安装e...

    3 年前
  • npm 包 react-silly-text-maker 使用教程

    简介 react-silly-text-maker 是一个为 React 开发者设计的 npm 包,它可以快速生成一些通用却极其无聊的文本内容,同时包含许多可自定义的选项,能够满足绝大部分前端测试、样...

    3 年前
  • npm 包 react-virtual-keyboard 使用教程

    在前端开发中,键盘是一个非常重要的输入设备。针对不同的需求,我们需要使用不同的键盘。但是自己写一个键盘通常会非常费时费力,而且还有各种端兼容性问题需要处理。这时候使用一个 npm 包就可以方便地解决这...

    3 年前
  • npm 包 s2s-handler-css-to-flow 使用教程

    s2s-handler-css-to-flow 是一个 npm 包,它提供了一种将 CSS 文件转换为 Flow 类型定义的方法。在编写前端样式时,通常需要编写样式文件和 JavaScript 文件,...

    3 年前
  • npm 包 promout 使用教程

    在前端开发中,我们经常需要引用第三方的库或插件来实现各种功能。随着前端开发技术的不断发展,我们使用的库和插件也日益增多,管理这些依赖项变得越来越困难。此时,npm 包管理器就成了我们不可或缺的工具之一...

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

    介绍 在前端开发中,使用 npm 包可以大大简化代码编写和管理。而 sp-lib 是一个常用的前端工具类库,提供了许多常用的函数和方法,方便前端开发人员处理数据和页面效果。

    3 年前
  • npm 包 sine-waves-tns 使用教程

    介绍 sine-waves-tns 是一个基于 TypeScript 的跨平台的 Sinewave 动画库,提供了一系列的参数可供自定义。sine-waves-tns 可以在 Web 和 Native...

    3 年前
  • npm 包 react-native-tplink 使用教程

    在本文中,我们将介绍如何使用 react-native-tplink 包来实现连接并控制红外设备。这个包提供了一些必要的组件和方法,可以帮助我们更方便地处理 TP-Link Smart Bulb、Sm...

    3 年前
  • npm 包 @tommueller/ngx-widget-grid 使用教程

    前言 前端开发中,常常需要使用网格布局来实现页面的排版。@tommueller/ngx-widget-grid是一个提供了网格系统的npm包,可以方便地实现网格布局。

    3 年前

相关推荐

    暂无文章