---
title: "@farmfe/plugin-yaml"
locale: "zh"
version: "1.x"
canonicalUrl: "https://farmfe.org/zh/docs/1.x/plugins/official-plugins/yaml"
publicationStatus: "prerelease"
---

<a id="farmfeplugin-yaml"></a>
# @farmfe/plugin-yaml


受 [@rollup/plugin-yaml](<https://www.npmjs.com/package/@rollup/plugin-yaml>) 启发


🍣 一个Farm插件，用于将YAML文件转换为ES6模块。


<a id="安装"></a>
## 安装


**npm**

```javascript
npm install @farmfe/plugin-yaml
```


**yarn**

```javascript
yarn add @farmfe/plugin-yaml
```


**pnpm**

```javascript
pnpm add @farmfe/plugin-yaml
```



<a id="使用"></a>
## 使用


farm.config.ts


```typescript
import { defineConfig } from '@farmfe/core';

export default defineConfig({
  plugins: [
    [
      '@farmfe/plugin-yaml',
      {
        documentMode: 'single' | 'multi', // 默认 single
        include: Regex, // 默认 None
        exclude: Regex, // 默认 None
      },
    ],
  ],
});
```


注意：


` include ` 或 ` exclude ` 使用的是正则表达式而不是glob。例如 ` **/01.yaml ` 是不合法的。正确的表达方式类似于 ` ".*\\/01.yaml" `。


这个插件允许你在Farm项目中直接导入YAML文件，并将它们转换成ES6模块。` documentMode ` 选项允许你指定处理单个文档的YAML文件（` single `）或包含多个文档的YAML文件（` multi `）。` include ` 和 ` exclude ` 选项让你可以更细致地控制哪些YAML文件应该被插件处理，通过指定匹配特定格式的正则表达式。这种灵活性让你能够在Farm项目中轻松地处理和利用YAML数据。
