Skip to content

转换器

提供一个统一的接口来转换源代码,以支持约定。

ts
// my-transformer.ts
import { createFilter } from '@rollup/pluginutils'
import { SourceCodeTransformer } from 'unocss'

export default function myTransformers(options: MyOptions = {}): SourceCodeTransformer {
  return {
    name: 'my-transformer',
    enforce: 'pre', // 在其他转换器之前执行
    idFilter(id) {
      // 只转换 `.tsx` 和 `.jsx` 文件
      return id.match(/\.[tj]sx$/)
    },
    async transform(code, id, { uno }) {
      // 代码是一个 MagicString 实例
      code.appendRight(0, '/* my transformer */')
    },
  }
}

你可以查看 官方转换器 获取更多示例。

基于 MIT 许可发布