webpack,限制可以导入的内容

以撒

Webpack中是否有一种方法可以限制可以导入哪些文件?

假设我希望能够导入同一目录以及父目录中的文件,但是该父目录之上没有任何内容?例如:

这些工作

import { blah } from "./script.js";

import { blah2 } from "./../gui/textbox.js";

import { blah3 } from  "./../I/can/go/as/deep/down/as/I/want/here.js";

但这行不通

import { passwords } from "./../../passwords.txt";

因为那将上升两个(或x个)目录,而不是一个。

慕尼姆纳

您可以创建加载程序以将webpack导入限制为特定文件。

// file: webpack.config.js
const path = require('path');

module.exports = {
  ...
  module: {
    rules: [
      {
        test: /\.js$/,
        use: [
          {
            loader: path.resolve('my-webpack-loader.js'),
            options: {/* ... */}
          }
        ]
      }
    ]
  }
};

如果资源文件在目录./src./node_modules目录之外或者您选择的任何目录,然后抛出

// file: my-webpack-loader.js
const { getOptions } = require('loader-utils');
const validateOptions = require('schema-utils');
const path = require('path');

const schema = {
  type: 'object',
  properties: {
    test: {
      type: 'string'
    }
  }
};

function handler(source) {
  const options = getOptions(this);

  if(this.resourcePath.indexOf(path.resolve('./node_modules')) !== 0) {
    if(this.resourcePath.indexOf(path.resolve('./src')) !== 0) {
      throw `Reseource loading restricted for ${this.resourcePath}`;
    }
  }

  validateOptions(schema, options, 'My Webpack Loader');

  return source;
}

module.exports = handler;

有关更多信息,请参见编写webpack加载器

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Webpack。是否可以进行依赖入口的导入?

Typescript可以导入Webpack UMD吗?

是否可以检查可以从 npm 模块导入的内容?

以文本形式导入和读取CSS文件的内容(React / webpack)

可以限制IPFS上内容的可见性吗?

在Palantir Foundry的“操作”中可以编辑的内容有什么限制?

是否可以通过 Nginx 中的内容限制正文大小

如何告诉 webpack 在哪里可以找到动态导入的模块?

是否可以在安装之间导出和导入内容?

我可以将表的内容导入Laravel种子中吗?

如何限制可以从导入的模块调用哪些函数?我可以将函数设为私有吗?(Python)

我可以将自动填充限制为仅包含单元格内容吗?

创建一个Postgresql视图,以限制用户可以看到的内容

限制用户看到的内容

帮助限制内容

我可以在Webpack中使用“ composes”语句导入scss文件吗?

Webpack忽略导入

Webpack从%appdata%导入

Webpack入门,导入错误

使webpack忽略某些导入

Webpack:导入CSS

是否可以将cacerts的所有内容导入到jssecacerts文件中?

Access是否可以读取Excel文件的内容而不将其导入到表中?

我可以删除 div 并更改从其他页面导入的 Iframe 中内容的样式吗?

可以导入范围将所有内容移动到单个列中

内容导入 Drupal

“导入的内容为空”

有没有一种方法可以通过checkstyle或findbugs限制某些Java导入

通过脚本标签导入与通过Webpack导入