颜色使用

黑白灰色

一般来说,颜色使用遵循规则如下:

  • 文字色:black、gray、grayLight、white。
  • 边框色:grayLine。
  • 背景色:grayBg、grayBgLight。

在实际开发中,除了 black 和 white 之外,其余的都已经定义为颜色变量,如 var(--gray),表示使用 #777777

主色、成功失败色等

浅色用于图标或背景,深色用于文字。

实际开发中,purple 和 blueDeep 不会用到,所以不用定义。其余的 6 个颜色只定义了浅色的三个变量(blue、red、green),深色的都是通过颜色函数转换过来的,转换规则为:将浅色降低透明度10%得到深色。如要得到 blueDark,则转换规则为:color(var(--blue) l(-10%))

默认主色为 blue

在线预览地址:Stone UI

本地运行

// 先安装
npm i

// 然后执行
npm run dev

最后打开http://localhost:6060/ 即可看到效果

创建组件

可以使用generator-stone-component脚手架来创建组件

先全局安装 yogenerator-stone-component

npm install -g yo
npm install -g generator-stone-component

然后运行命令

yo stone-component

根据交互提示输入组件名字及描述,注意组件名为首字母大写的驼峰格式 /^[A-Z][a-zA-Z]*$/

创建成功后,生成的组件可在 src/components 目录中看到。

组件预览

注:由于 DEMO 中左侧的菜单现在是按分类罗列的,所以现在需要手动把自己写的组件添加进根目录styleguide.config.js配置文件的相应分类中。

组件 DEMO 是调用组件中的 readme 文件进行渲染的,编辑比较简单,可参考已有例子,或官方文档,如有疑问请询问 ycxu

使用组件

使用前准备

由于组件覆盖多业务,为了保持样式的可变性,所有组件中的样式都是未经过编译处理的。其主要实现思路如下:

  • 组件样式中导入项目中 assets/css 目录中的 function.css。
  • 项目中的 function.css 会先导入项目本身的 css 变量文件,然后再导入基础的库 sandal-for-postcss

正式使用

每个包名字前面会有一个stone-前缀,使用 tnpm 安装,所有大写字母转成小写,使用-连接,如安装 RadioCheckbox 组件:

tnpm i @tencent/stone-radio-checkbox

有些组件默认并没有导出,如 Table,默认导出的只有 Table 组件,其他的使用需要到 HOC 目录去引入,如需要使用排序,则

import Table from '@tencent/stone-table';
import { tableSort } from '@tencent/stone-table/HOC';

const TableSort = tableSort(Table);

具体每个组件的目录,在组件 demo 预览中可见路径。

项目中基础样式文件配置

使用组件之前,先确保本地已经

设计特色

  • 单包管理多包,每个 component 都可以单独引用
  • 组件通过 readme 文件直接生成 demo, 且可在线编辑
  • eslint, sytlelint 验证,commit 的时候会验证
  • PostCSS

使用技术

FAQ