Version: 3.x
使用 CSS Modules
#
用法Taro 中内置了 CSS Modules 的支持,但默认是关闭的,如果需要开启使用,请先在编译配置中添加如下配置。
#
在小程序端开启config/index.js
#
在 H5 端开启config/index.js
#
设置转换模式推荐使用自定义转换模式,这样的话就不会影响到一些第三方库的样式了
在开启之后,你就可以在 Taro 中使用 CSS Modules 功能了,值得注意的是,Taro 中使用 CSS Modules 有两种模式,分别为全局转换及部分自定义转换模式,通过 namingPattern
配置进行控制
namingPattern
配置取值分别如下:
global
,表示全局转换,所有样式文件都会经过 CSS Modules 转换处理,除了文件名中包含.global.
的样式文件module
,表示自定义转换,只有文件名中包含.module.
的样式文件会经过 CSS Modules 转换处理
generateScopedName
支持传入字符串和函数:
字符串
,其格式见:https://github.com/webpack/loader-utils#interpolatename,值得指出的是,可使用[local]
取其原类名函数
,其类型定义为(localName: string, absoluteFilePath: string) => string
,其中localName
为原类名,absoluteFilePath
为文件的绝对路径,返回值将作为新的类名
#
用法示例CSS Modules 使用方式如下:
组件样式
组件 JS 中使用样式