npm 包 @savvy-css/ember-savvy-css 使用教程

前言

在前端开发中,对于样式的处理一直是一个非常重要的问题,而 Sass、Less、 Stylus 等样式预处理器相对于传统 CSS,可以更加简单、方便地帮助我们进行样式的维护和复用。但是,这些样式预处理器的使用,需要先前安装相应的编译器,然后才能使用相应的语法进行编码。这在一定程度上,增加了前端开发的门槛。

而近几年,出现了一些新的工具类库,可以帮助开发者更加便捷的处理样式问题。本文介绍的 @savvy-css/ember-savvy-css 就是其中的一种,它是一个针对于 Ember 框架的内联样式处理工具,可以帮助我们不用安装额外的编译器就能够使用 Sass 和类似于 CSS 的语法,快速的进行样式的编写和维护。

本文就为大家介绍该工具的详细用法。

安装

在使用 @savvy-css/ember-savvy-css 之前,我们需要先使用 npm 进行安装,在项目的根目录中执行以下命令:

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

使用

下面我们就来介绍一下如何使用 @savvy-css/ember-savvy-css 进行样式的编写工作。

配置文件

在使用 @savvy-css/ember-savvy-css 编写样式之前,我们需要先创建一个 savvy.config.js 的配置文件,用于配置该工具的相关设置,例如主题、颜色等。文件的基本内容如下:

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

该配置文件以 CommonJS 风格导出一个对象,在该对象中,我们可以指定不同的主题样式、颜色、字体大小等,这些将会被同步到所有样式文件中,方便我们在之后的样式中直接调用。

新建样式文件

我们可以在 Ember 应用的代码目录 app/styles/savvy/ 中新建一个 Sass 文件,如 button.scss,然后在里面书写样式的代码:

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

在这里,我们可以看到,相对于传统的 Sass 语法,这里使用了一些类似于 CSS 的结构和变量。primary.background 取的就是在 savvy.config.js 中定义的主题颜色值,sizes.medium.fontSize 则是样式大小的变量,其中的 medium 也是在配置文件中定义的。

此外,还可以书写类似下面的代码:

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

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

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

这与传统的 Sass 编写方式无异,不过在 @savvy-css/ember-savvy-css 中变量的作用域限制仅仅在这个文件中。

使用组件

当样式文件编写完成之后,我们可以直接在组件中引用该样式文件,在组件文件 app/components/button.js 中添加:

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

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

在组件模板文件中,我们可以直接使用该样式:

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

需要注意的是,由于样式文件在组件中的作用域仅限于当前组件,所以,我们需要在上面的代码中添加前缀 .savvy-button,否则,样式将不会被正确渲染。

示例代码

下面是一个完整的示例项目:

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

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

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

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

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

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

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

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

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

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

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

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

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

本文的示例项目已托管在 GitHub 上,地址为:https://github.com/huatx/ember-savvy-css-sample。

结尾

@Savvy-CSS/ember-savvy-css 是一个常见的专门针对于 Ember 框架的内联样式工具,能够帮助我们更加快捷方便的处理样式问题,本文也为大家介绍了一些该工具的使用方法,希望这对于广大前端开发者有所帮助。

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


猜你喜欢

  • npm 包 progress-img 使用教程

    简介 在 Web 开发中,我们经常需要显示任务进度,通常我们会用进度条的形式显示。进度条通常是一个比较常见的 UI 控件,用于表示操作的进度。本文将介绍一款 npm 包 progress-img,该包...

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

    在前端开发中,图标的使用很常见。为了避免每次都要手写 SVG,我们可以使用 npm 包 react-easy-svgs,它可以帮助我们更便捷地使用 SVG 图标。本文将详细介绍这个 npm 包的使用方...

    3 年前
  • npm 包 po-development-package 使用教程

    在前端开发中,我们经常会使用一些工具来提高我们的效率。其中,npm 包在前端开发中扮演着非常重要的角色。在这里,我们将介绍一个非常实用的 npm 包 —— po-development-package...

    3 年前
  • npm 包 mobile-gestures 使用教程

    前端开发中,移动端的手势操作往往比 PC 端更为频繁和复杂。为了优化用户体验,我们通常需要在 WebAPP 中使用手势操作来替代一些繁琐的点击操作。而 npm 包 mobile-gestures 提供...

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

    随着移动端App和电脑网站的广泛应用,Web前端开发技术愈发成熟,前端开发的重要性逐渐凸显。npm包 generator-activity是前端开发时常用的工具之一,它能够快速生成各类前端项目的模板,...

    3 年前
  • npm包cordova-plugin-device-settings使用教程

    在移动应用开发中,经常需要获取和操作设备相关的设置信息,比如显示设备的电量信息、屏幕亮度、无线网络状态等等。对于使用 Cordova 开发移动应用的前端开发者来说,cordova-plugin-dev...

    3 年前
  • npm 包 ngvas-image-cors 使用教程

    什么是 ngvas-image-cors ngvas-image-cors 是一个在 Angular 框架下使用的 npm 包,它提供了一个在画布上绘制散点图和折线图的工具。

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

    在前端开发中,使用可复用的组件或工具库是非常常见的做法。而 Vue.js 作为一种流行的前端框架,许多人利用其封装成的组件库或工具库进行开发。其中,一个非常实用的 npm 包是 vue-bag。

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

    前言 在前端开发中,我们经常会使用 npm 包来协助我们完成一些工作。而 react-native-wtfssd-remind 就是一个非常实用的 npm 包,它可以帮助我们实现更好的提醒功能。

    3 年前
  • npm 包 capsule8-api 使用教程

    在前端开发中,有时需要与后端服务器进行交互。为了更方便地完成这个过程,我们可以使用 capsule8-api 这个 npm 包。本文将详细介绍 capsule8-api 的使用方法,包括安装、初始化和...

    3 年前
  • npm 包 r3actor 使用教程

    介绍 r3actor 是一个用于开发 React 组件的 npm 包。它提供了一些额外的功能,让开发者在编写组件时更加简洁方便。使用 r3actor,我们可以: 对组件进行状态管理和渲染 将状态和处...

    3 年前
  • npm 包 railinc-angular-seed 使用教程

    介绍 railinc-angular-seed 是一个 AngularJS 项目的种子项目。通过它,你可以很方便地搭建一个 AngularJS 项目的框架。 在本文中,我们将详细介绍如何使用 rail...

    3 年前
  • npm 包 cubefilter 使用教程

    在前端开发中,会遇到各种数据筛选和排序的需求。如果手写代码来实现这些功能,工作量庞大、可维护性低。因此,我们可以通过使用开源的 npm 包来快速完成这些功能。 这篇文章将介绍另一个 npm 包 cub...

    3 年前
  • npm 包 ej2-graphql-adaptor 使用教程

    ej2-graphql-adaptor 是一个轻量级的 npm 包,它提供了在 JavaScript 中使用 GraphQL 的功能。GraphQL 是一种用于 API 开发的查询语言,它能够让客户端...

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

    在前端开发中,经常需要对日期进行处理。js-strtotime 是一个可以将日期时间字符串转化为时间戳的 npm 包。本文将介绍如何使用 js-strtotime,包括安装、使用、示例和注意事项。

    3 年前
  • npm 包 islo 使用教程

    什么是 islo islo 是一个实用的 npm 包,它提供了一系列的字符串判断工具,包括判断字符串是否为电话号码、身份证号码、邮箱等常见信息。使用 islo 可以方便地简化字符串类型的验证操作。

    3 年前
  • npm 包 quill-image-resize-module-react 使用教程

    介绍 Quill 是一个优秀的富文本编辑器,被广泛应用于前端项目中,但是它默认的图片处理功能不能自由调整图片大小,因此需要使用 quill-image-resize-module-react 这个 n...

    3 年前
  • npm 包 runnerty-notificator-console 使用教程

    在前端开发中,我们经常需要使用到各种 npm 包来帮助我们快速开发和部署应用。其中,runnerty-notificator-console 是一个非常实用的工具,它可以将 Runnerty 的通知输...

    3 年前
  • npm 包 sass-requirements 使用教程

    在前端开发中,Sass 是一种非常流行的 CSS 预处理器。很多开发者都使用 Sass 来提高 CSS 编写的效率。而 sass-requirements 是一个非常实用的 npm 包,它可以帮助开发...

    3 年前
  • npm 包 @auicomponents/action 使用教程

    介绍 这是一篇关于 npm 包 @auicomponents/action 的使用教程。@auicomponents/action 是一款前端开发中常用的库,主要用于实现各类交互行为,如点击、滚动、拖...

    3 年前

相关推荐

    暂无文章