validateIconSet()
此函数属于 Iconify Utils 包。
函数 validateIconSet() 用于验证图标集,并返回清理后的 IconifyJSON 对象。
如果提供的数据中存在错误:
- 如果错误是严重的,函数将抛出异常。
- 如果错误可以修复,函数将抛出异常,除非提供了 fix 选项。
此函数会检查所有内容,包括元数据。
用法
函数具有以下参数:
- data,object。要验证的数据。
- options,object。可选的配置对象。
函数返回:
- 成功时返回 IconifyJSON 对象(与第一个参数传入的对象相同)。
如果函数遇到无法修复的错误,将抛出异常。
选项
选项对象具有以下属性:
- fix,boolean。如果设置为 true,函数将尽可能尝试修复错误,而不是抛出异常。默认值为 false。
- prefix,string。图标集 prefix 属性的默认值。如果设置,函数将用你提供的值覆盖图标集中的 prefix。
- provider,string。图标集 provider 属性的默认值。如果设置,函数将用你提供的值覆盖图标集中的 provider。
示例
usage.ts
ts
import { promises as fs } from 'fs';
import { validateIconSet } from '@iconify/utils';
(async () => {
// Load data from file
const data = JSON.parse(
await fs.readFile(
'./node_modules/@iconify-json/mdi-light/icons.json',
'utf8'
)
);
// Validate data
const iconSet = validateIconSet(data);
// Count icons (simple calculation)
const count =
Object.keys(iconSet.icons).length +
(iconSet.aliases ? Object.keys(iconSet.aliases).length : 0);
console.log(`Found ${count} icons`);
})();快速验证
此函数体积较大,因此不建议将其打包用于浏览器环境。
如果你想在浏览器中验证图标集(例如在图标组件中从 API 加载数据时),请改用 quicklyValidateIconSet()。它更小、更快,因为它不检查元数据,也不尝试修复错误。