webpack - 什么 - !在 webpack loader 字符串中是什么意思?

标签 webpack

我已经看到一些加载器查询,例如 require('-!some-loader!file.ext') 但一直无法找到对 -! 在文档中。我也见过一些以 !! 开头的代码。它们是什么意思,记录在何处?

最佳答案

require('some-loader!file.ext')! 这样的内联加载器不应该被使用,因为它们是非标准的。

但是,加载程序生成的代码可能会使用它们。


简而言之,这些前缀有三种。它们用于覆盖默认加载程序顺序配置,以适应需要或导入某些文件时的特殊情况。

假设您不希望配置文件中存在的加载程序评估某个文件,那么您可以在加载程序之前使用单个 !。请注意,! 也用于分隔加载程序。

如果您碰巧配置了预加载器和/或后加载器,您可以通过添加前缀 !! 来禁用所有加载器,或使用 -! 来禁用它们除了 poSTLoader 之外的一切。

前加载器和后加载器,顾名思义,定义了加载器的使用顺序。使用 enforce: "pre"enforce: "post" 在您的配置文件中定义它们。

同样,但引用自 webpack docs :

  • Prefixing with ! will disable all configured normal loaders

import Styles from '!style-loader!css-loader?modules!./styles.css';

  • Prefixing with !! will disable all configured loaders (preLoaders, loaders, postLoaders)

import Styles from '!!style-loader!css-loader?modules!./styles.css';

  • Prefixing with -! will disable all configured preLoaders and loaders but not postLoaders

import Styles from '-!style-loader!css-loader?modules!./styles.css';

关于webpack - 什么 - !在 webpack loader 字符串中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47860007/

相关文章:

javascript - 使用 Webpack 和 svgr 加载器加载 .scss 中的 SVG

javascript - Redux Web 扩展 - 未捕获的类型错误 : Invalid attempt to spread non-iterable instance

reactjs - 配置 Cypress、cypress-react-unit-test 和 React

AngularJS- 使用 LazyLoad- Webpack 动态加载脚本文件

javascript - 如何将 CSS 文件从源文件夹捆绑并复制到 dist 文件夹?

javascript - Rails Webpacker - 未捕获的 TypeError : $(. ..).tooltip 不是函数

javascript - Webpack 生产版本

javascript - 如何在vue组件中为@import ~stylus设置webpack?

Webpack 使用 NODE_ENV=production 编译 vue 仍然导致开发警告

node.js - Node.js 中的错误 `window not defined`