npm包BEM-Sass-Mixins使用教程

BEM-Sass-Mixins是一个基于Sass的BEM(块、元素、修饰符)命名方法的库,它包含了一系列的mixin,可以大大简化DOM元素类的命名,提高代码的可读性和可维护性,是前端开发中必不可少的工具之一。

安装

安装BEM-Sass-Mixins可以使用npm命令:

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

使用

为了使用BEM-Sass-Mixins,你需要在你的Sass文件中将它导入:

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

然后,你就可以使用其中任何一个mixin了。

Block

Block(块)是BEM命名法中的第一层级,它代表一个可复用的组件。你可以使用以下BEM-Sass-Mixins mixin来定义块:

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

这样,就会生成一个类名为component-name的块。

Element

Element(元素)是BEM命名法中的第二层级,它代表块中某个特定功能的元素。以component-name块的element-name为例:

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

这样就会生成一个类名为component-name__element-name的元素。

Modifier

Modifier(修饰符)是BEM命名法中的第三层级,它用于表示块或元素的状态或变化。以component-name块的modifier-name为例:

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

这样就会生成一个类名为component-name--modifier-name的修饰符。

Mix

Mix是一种结合了block、element和modifier的形式,可以用来在不同的块/元素中共享代码,以减少代码的重复度。可以使用@include mix() mixin来创建一个mix:

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

这样就会生成一个block-name__element-name--modifier-name的类。

示例

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

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

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

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

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

这样就会生成一系列的CSS类:

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

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

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

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

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

总结

BEM-Sass-Mixins是一款非常好用的Sass库,它可以帮助你更好地实现BEM命名法,避免class命名的冗长和复杂度。如果你还没有尝试过该工具,强烈建议你抽时间学习一下,并实践应用在您的项目中,会极大提高您的开发效率和代码可读性,减少维护成本。

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


猜你喜欢

  • npm 包 universal-composable 使用教程

    简介 npm 包 universal-composable 是一个用于在任何环境下组合和管理多个 JavaScript 库的库。它允许你以一种统一的方式将多个库组合在一起,并提供了一些有用的工具来管理...

    3 年前
  • npm 包 vue-resize-sensor 使用教程

    在开发 Web 应用过程中,我们常常需要跟随浏览器窗口大小变化来调整 DOM 元素的尺寸、位置、布局等。而实现这一需求,无论是手写原生代码还是使用 jQuery 等库,都需要写大量冗余的代码,而且难以...

    3 年前
  • npm 包 swig-templates-webpack-plugin 使用教程

    在前端开发过程中,经常需要使用到模板引擎来进行页面渲染,其中 Swig 是一个很不错的模板引擎。而 swig-templates-webpack-plugin 则是一个 webpack 插件,可以帮助...

    3 年前
  • npm 包 `discord.kappa` 使用教程

    随着即时通讯工具的不断普及,开发一个聊天机器人已经成为了一个很有用的技能。而 Discord 是目前非常受欢迎的一个即时通讯工具,有很多人都在使用。discord.kappa 就是一个可以帮助我们快速...

    3 年前
  • npm 包 anim-num 使用教程

    介绍 npm 包 anim-num 是一个基于 JavaScript 的数字动画库,它可以帮助你快速创建数字动画效果,包括计数器、进度条、百分比等。该库包含多种动画效果,支持自定义样式和动画配置,非常...

    3 年前
  • npm 包 vueantd 使用教程

    在前端开发中,我们经常需要使用第三方的 UI 组件库。而 vueantd 是一个基于 Vue.js 的 UI 组件库,它提供了丰富的组件和样式风格,可以加速我们的开发过程。

    3 年前
  • npm 包 dw-jpeg-js 使用教程

    作为一名前端开发人员,我们时常会遇到需要处理图片的场景,比如对图片进行压缩、裁剪、旋转等操作。而 dw-jpeg-js 是一款可以帮助我们处理 jpeg 图片的 npm 包。

    3 年前
  • npm 包 portm-sdk 使用教程

    简介 Portm 是一个轻量级的跨平台无侵入性打点 SDK,支持 Web、移动端、小程序等多种平台。本教程将详细介绍如何使用 npm 包 portm-sdk,使您的前端项目具备数据统计能力。

    3 年前
  • npm 包 react-native-app-intro-2 使用教程

    介绍 React Native 是一款使用 JavaScript 构建原生移动应用的框架,通过 React Native 可以在 iOS 和 Android 上实现真正的原生体验。

    3 年前
  • npm 包 @gerhobbelt/mathjax-node 使用教程

    在前端开发中,有许多需要进行数学计算或公式渲染的场合,例如数学论文展示、科研成果呈现等等。而 MathJax 就是一款优秀的数学公式渲染框架。在此基础上,@gerhobbelt 开发了 npm 包 @...

    3 年前
  • npm 包 mini.css-inferno 使用教程

    简介 mini.css-inferno 是一个基于 mini.css 的样式框架,在 mini.css 的基础上,使用 inferno.js 进行了封装,使其更加适合 inferno.js 框架下的前...

    3 年前
  • npm 包 belley-bootstrap-treeview 使用教程

    前言 bellergy-bootstrap-treeview 是一个基于 Bootstrap 样式的树形列表插件,可以方便地展示多层级、动态添加删除节点等功能,适用于前端开发项目中需要实现树形结构的场...

    3 年前
  • npm 包 smash-js-serverless-cli 使用教程

    npm 是 Node.js 包管理器,它提供了丰富的 JavaScript 包供开发者使用。在前端开发中,我们经常需要使用各种 npm 包来实现特定的功能。今天我们要介绍的是一个名为 smash-js...

    3 年前
  • npm 包 surenpi 使用教程

    背景 npm 是目前最大的 JavaScript 包管理工具,开发者可以通过 npm 下载、安装和管理 JavaScript 包。而 surenpi 是一个 npm 包,主要用于前端开发。

    3 年前
  • NPM 包 node-red-contrib-coinbase 使用教程

    简介 node-red-contrib-coinbase 是一个基于 Coinbase 的 Node-RED 插件,它使得在 Node-RED 中集成 Coinbase 的功能变得非常容易。

    3 年前
  • NPM包 zxcvbn-nl 使用教程

    随着互联网的发展,网站的安全保护变得越来越重要。其中,用户的密码安全更是不容忽视。对于开发人员来说,如何有效地对用户密码进行保护,是一个必须面对的问题。在这方面,NPM包 zxcvbn-nl 可以起到...

    3 年前
  • npm 包 @potato4d/pw 使用教程

    介绍 @potato4d/pw 是一个基于 Puppeteer 的截图比较工具,适用于前端开发人员进行 UI 自动化测试和截图比较。它提供了易于使用且友好的 API,方便开发人员快速比较网页的不同版本...

    3 年前
  • npm包 node-red-ms-cognitive-textanalytics-ja 使用教程

    在前端开发中,文本处理是一个不可避免的任务,而对于日语文本处理,我们可以使用 node-red-ms-cognitive-textanalytics-ja 这个 npm 包来完成。

    3 年前
  • npm 包 crypto-unit-browser 使用教程

    前言 随着区块链技术的发展,数字货币成为了当下的热门话题。在数字货币的领域中,安全是最为重要的一环。加密技术是保障数字货币安全的重要手段之一。近些年来,加密技术的需求逐渐增多,众多的加密算法也应运而生...

    3 年前
  • npm 包 buff.js 使用教程

    在前端开发中,经常需要处理二进制数据。Node.js 提供了一些基本的 Buffer API,但是它们使用起来不够方便,而且由于 Node.js 和浏览器的实现方式不同,也有一些差异。

    3 年前

相关推荐

    暂无文章