NPM 包 glamorous-jsxstyle 使用教程

阅读时长 4 分钟读完

简介

glamorous-jsxstyle 是一个基于 React 的 UI 组件库,它使用了 CSS-in-JS 的方式来实现样式,让样式和组件完全解耦,减少了样式表冲突和命名空间问题。

安装

使用 npm 安装:

基本使用

在组件中引入 glamorous-jsxstyle,使用 glamor 来定义样式。

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

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

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

在上例中,我们定义了一个 Button 组件,它有两个样式对象,第一个样式对象是一个普通的对象,表示按钮的字体大小;第二个样式对象是一个函数,它根据组件的 props 来返回一个动态的样式对象,表示按钮的背景色和文字颜色。

使用样式,只需要在组件中传入对应的 props,样式会自动应用。

高级用法

复用样式

使用 glamorous 函数,可以将样式从组件中抽离出来,形成独立的样式组件。这样可以提高代码的复用性。

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

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

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

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

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

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

在上例中,我们将样式从 Button 组件中抽离出来,定义为一个样式组件 ButtonStyle。Button 组件只需要继承 ButtonStyle 组件的 props 和样式,即可实现样式的复用。

混合样式

使用 glamor.compose 函数,可以将多个样式组合成一个样式对象。这样可以实现样式的继承和复用。

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

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

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

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

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

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

在上例中,我们使用了 glamor.compose 函数,将 baseButtonStyle 和 primaryButtonStyle 组合成一个样式对象,作为按钮的样式。

可以使用 glamor.compose 函数,将多个样式组合成一个样式对象,然后应用到多个组件中,实现样式的混合和复用。

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

纠错
反馈