Open Little-Gee opened 5 years ago
您好,把您这个项目clone下来以后,npm start跑起来在生成color.less文件的时候会报错LessError: error evaluating function darken
: color.toHSL is not a function,无法生成color.less,请问您遇到过这个问题吗?
您好,把您这个项目clone下来以后,npm start跑起来在生成color.less文件的时候会报错LessError: error evaluating function
darken
: color.toHSL is not a function,无法生成color.less,请问您遇到过这个问题吗?
以前没注意过,你试试升级下依赖? https://github.com/mzohaibqc/antd-theme-generator/issues/66
采用
antd-theme-generator
这个插件,使用less
的modifyVars
来更改主题(也有
webpack
插件形式——antd-theme-webpack-plugin)主要就是通过浏览器编译
less
来实现更改主题,生成一个color.less
文件版本:
less、ant design等配置省略…… 为了方便(偷懒),直接采用之前搭的项目
首先安装
antd-theme-generator
在
scripts
文件夹下添加脚本scripts/generateColorLess.js
注意
options
中的路径要与自己项目中的路径一致,其中index.less
和variables.less
需要自己创建在
src
下创建文件src/styles/index.less
和src/styles/variables.less
,这两个文件用于定义全局的主题样式注意:
1.所有需要修改的主题变量要在此文件中添加,并确保
scripts/generateColorLess.js
中也存在相应变量全局样式写在index.less
中,修改这些文件中的样式配置需要重启2.不要给两个或多个变量分配同样的颜色
3.不要使用
#fff
、#ffffff
、#000
或#000000
4.需要用白色或黑色时,稍微修改颜色,例如
#fffffe
、#000001
这些不会替代其他组件常见背景色的颜色5.自己写的样式(非
ant design
组件样式)如果需要随主题动态修改,则要用index.less
中的全局样式,例如:<div className="base-color">文字</div>
然后修改
public/index.html
修改
package.json
中的脚本至此配置的部分就差不多了,接下来就是具体使用,和官方一样用的是
react-color
具体使用方法可以参考官网,我这里直接“参考”了
ant design
的用法(逃新建文件
src/color/ColorPicker.jsx
然后就可以使用了,比如
App.js
效果图:![GIF](https://user-images.githubusercontent.com/39795099/59077400-0734ed00-890d-11e9-91a7-ef44b1dc9b12.gif)
项目参考地址
最后,附上
antd-theme-generator
的 github地址也有更方便的
webpack
插件形式antd-theme-webpack-plugin
及其 github地址