toggleCharacter()
此函数属于 Iconify Tools 中的 IconSet 类。
toggleCharacter() 函数用于向图标添加字符或从中移除字符。
用法
该函数包含以下参数:
- iconName,string 类型。图标名称。
- char,string 类型。十六进制字符串格式的字符,例如 "f001"。
- add,boolean 类型。如果为 true,则将字符添加到图标;如果为 false,则从图标中移除字符。
函数执行成功时返回 true,失败时返回 false。
字符映射
字符映射的作用是什么?
它用于生成图标字体。图标字体中的每个图标都会分配一个字符。即使使用连字,连字也会指向一个字符,因此字符是必需的。
如何查找所有字符?
你可以通过使用 chars() 方法来获取所有已分配字符的列表。
如果你想查看分配给某个图标的字符,可以使用如下代码:
ts
const item = iconSet.entries['some-icon'];
// Set<string>
console.log(item.chars);直接在 entries 属性中修改字符是安全的。
示例
chars-example.ts
ts
import { blankIconSet } from '@iconify/tools';
// Create icon set, add few icons and characters
const iconSet = blankIconSet('test-prefix');
iconSet.setIcon('add', {
body: '<path d="M14 7v1H8v6H7V8H1V7h6V1h1v6h6z"/>',
});
iconSet.toggleCharacter('add', 'f001', true);
iconSet.setIcon('triangle-left', {
body: '<g fill="currentColor"><path d="M10.44 2l.56.413v11.194l-.54.393L5 8.373v-.827L10.44 2z"/></g>',
});
iconSet.toggleCharacter('triangle-left', 'f002', true);
iconSet.setVariation('triangle-right', 'triangle-left', {
hFlip: true,
});
iconSet.toggleCharacter('triangle-right', 'f003', true);
// Set character for icon that does not exist (will fail)
iconSet.toggleCharacter('whatever', 'f005', true);
// Export characters map
console.log(iconSet.chars());
// Characters map is also exported in export():
console.log(iconSet.export());