主题适配
- 说明 这个统计表格中统计了,平台这边与 UE 初步沟通后的 className 变量名称。若有未覆盖到的或者不确定是否需要使用主题的可联系祁宇(UE), 若添加之后未产生效果可联系秦贝贝(开发)。 若对方案有疑问或者建议可先联系秦贝贝(开发)。
- 原理 不同主题下,同一个 className 变量会打包不同的内容(使用的 less 的公式加 js 操作)。 若使用的是平台的标准组件,则不需要领域自己写样式,把之前自己定义的样式删除就可; 若是个性化页面,或个性化区域,样式必须自己定义,则需要添加主题颜色类,原有的样式不需要做任何修改!
- 注意事项 主题的标准输出是 UE 来进行,当前的换肤方案的输出是平台开发,出现问题可优先找开发。 添加 className 理论上不会影响默认情况下的样式,也不需要移除原来的 className。
- 用法 针对需要换肤的变量,平台提供了主题颜色类,大家只需要把对应的主题颜色类,添加到相应的元素上即可! 附件给出了各主题颜色类使用区域说明!
2. API
2.1 setTheme
调用样例 : setTheme({ themeType, themeTypes, baseName: ‘nc-lightapp-front’ })
说明 : 设置主题 setTheme 是 window 上的方法,建议先判断存在性
参数说明:
| 参数 | 说明 | 类型 | 默认值 | 备注 |
|---|---|---|---|---|
| themeType | 主题类别 | String | 必填 | |
| themeTypes | 主题类别集合,已经内置 | String | ||
| baseName | 主题文件基础名称 | String |
2.2 getTheme
调用样例 : getTheme().then(themeType => setTheme({ themeType, themeTypes, baseName: ‘nc-lightapp-front’ }))
说明 : 获取主题 import { getTheme } from ‘nc-lightapp-front’;
返回值说明 : 返回主题名称


