首页 > 解决方案 > 在 NodeJS 中修改 `module.paths` 是否合法?

问题描述

文档不是很有帮助,因为它们没有说明此属性是否可变。

这很重要,因为改变这个变量实际上会导致require函数行为的改变。因此,如果有人明确说明此属性支持和打算用于何种用途,那就太好了。

基本上,以下代码可以正常工作:

const path = require(`path`);

// adding path to `lol` directory, which contains `kek.js` file
module.paths.unshift( path.join(__dirname, `lol`) );

// require works, despite `kek` is not inside of any of `node_modules` directories
const kek = require("kek");

// kek
console.log(kek);

但它应该工作吗?从文档中很难说。

请指教。谢谢。

标签: javascriptnode.jsmodulerequirecommonjs

解决方案


推荐阅读