Skip to navigation

@mdx-js/loader

MDX 的 webpack 加载器。

内容

这是什么?

该包是一个支持 MDX 的 webpack 加载器。

我什么时候应该使用这个?

如果你使用 webpack(或使用 webpack 的其他工具,例如 Next.js),此集成非常有用。

这种集成可以与 Babel 加载器相结合,将现代 JavaScript 功能编译为用户支持的功能。

如果你想评估 MDX 代码,则可以手动使用更底层的编译器 (@mdx-js/mdx)。

安装

这个包是 仅限 ESM。 在 Node.js(版本 16+)中,使用 npm 安装:

Shell
npm install @mdx-js/loader

使用

将以下内容添加到你的 webpack.config.js 中:

TypeScript
/** @type {import('webpack').Configuration} */
const webpackConfig = {
  module: {
    // …
    rules: [
      // …
      {
        test: /\.mdx?$/,
        use: [
          {
            loader: '@mdx-js/loader',
            /** @type {import('@mdx-js/loader').Options} */
            options: {/* jsxImportSource: …, otherOptions… */}
          }
        ]
      }
    ]
  }
}

export default webpackConfig

如果你通过 ¶ Next.js¶ Vue CLI 使用 webpack,另请参阅 ¶ Next.js¶ Vue CLI 以获取更多信息。

API

该包不导出任何标识符。 默认导出为 mdx

mdx

该包导出 webpack 插件作为默认导出。 配置(参见 Options)通过 webpack 单独传递。

Options

配置(TypeScript 类型)。

选项与 CompileOptions@mdx-js/mdx 相同,但根据 Webpack 的配置方式支持 SourceMapGeneratordevelopment 选项。 你无法手动传递它们。

例子

与 Babel 结合

如果你使用现代 JavaScript 功能,你可能希望通过 babel-loader 使用 Babel 来编译为可在旧版浏览器中运行的代码:

TypeScript
/** @type {import('webpack').Configuration} */
const webpackConfig = {
  module: {
    // …
    rules: [
      // …
      {
        test: /\.mdx?$/,
        use: [
          // Note that Webpack runs right-to-left: `@mdx-js/loader` is used first, then
          // `babel-loader`.
          {loader: 'babel-loader', options: {}},
          {
            loader: '@mdx-js/loader',
            /** @type {import('@mdx-js/loader').Options} */
            options: {}
          }
        ]
      }
    ]
  }
}

export default webpackConfig

类型

该包完全采用 TypeScript 类型。 它导出附加类型 Options。 请参阅我们网站上的 § 类型 了解信息。

兼容性

由统一集体维护的项目与 Node.js 的维护版本兼容。

当我们削减新的主要版本时,我们会放弃对未维护的 Node.js 版本的支持。 这意味着我们尝试保持当前版本 @mdx-js/loader@^3 与 Node.js 16 兼容。

安全

请参阅我们网站上的 § 安全 了解信息。

贡献

请参阅我们网站上的 § 贡献 了解入门方法。 请参阅 § 支持 了解获取帮助的方法。

该项目有 行为守则。 通过与此存储库、组织或社区交互,你同意遵守其条款。

许可证

MIT © 合成器和 Vercel

MDX 中文网 - 粤ICP备13048890号