有没有办法覆盖 StyleDictionary 中扩展 json 配置文件中的一些数据?
Is there a way to overwrite some data from the extended json config file in StyleDictionary?
问题很简单:
我有一个 javascript 文件
const StyleDictionary = require('style-dictionary').extend('color-config.json');
和一个 json 配置文件
{
"source": ["tokens/color.json"],
"platforms": {
"css": {
"transforms": ["color/css"],
由于我使用的是特定的架构,我需要在所有令牌配置的源代码前加上前缀json,所以目前我的构建过程中的情况如下source tokens/color.json
不工作,相反我需要使用像这样的东西 /extra/architecture/private/tokens/color.json
。
但是我不想直接在 json 中附加这个预路径,我希望能够通过一个配置参数通过 javascript 添加它。
目前我找不到好的方法,唯一好的方法是直接编辑配置 json 文件。
有更好的主意吗?
这里是答案,extend
可以多次返工,returns新更新的Style Dictionary对象处理程序。
const StyleDictionary = require('style-dictionary').extend('color-config.json');
StyleDictionary.extend({
source: StyleDictionary?.options?.source
? StyleDictionary.options.source.map(
source => `extra/architecture/private/${source}`
)
: [],
platforms: StyleDictionary.options.platforms,
}).buildAllPlatforms();
问题很简单:
我有一个 javascript 文件
const StyleDictionary = require('style-dictionary').extend('color-config.json');
和一个 json 配置文件
{
"source": ["tokens/color.json"],
"platforms": {
"css": {
"transforms": ["color/css"],
由于我使用的是特定的架构,我需要在所有令牌配置的源代码前加上前缀json,所以目前我的构建过程中的情况如下source tokens/color.json
不工作,相反我需要使用像这样的东西 /extra/architecture/private/tokens/color.json
。
但是我不想直接在 json 中附加这个预路径,我希望能够通过一个配置参数通过 javascript 添加它。
目前我找不到好的方法,唯一好的方法是直接编辑配置 json 文件。
有更好的主意吗?
这里是答案,extend
可以多次返工,returns新更新的Style Dictionary对象处理程序。
const StyleDictionary = require('style-dictionary').extend('color-config.json');
StyleDictionary.extend({
source: StyleDictionary?.options?.source
? StyleDictionary.options.source.map(
source => `extra/architecture/private/${source}`
)
: [],
platforms: StyleDictionary.options.platforms,
}).buildAllPlatforms();