Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我是否必须将创建并要导入的任何脚本/模块放在node_modules文件夹中?_Javascript_Node.js_Visual Studio Code_Node Modules_Importerror - Fatal编程技术网

Javascript 我是否必须将创建并要导入的任何脚本/模块放在node_modules文件夹中?

Javascript 我是否必须将创建并要导入的任何脚本/模块放在node_modules文件夹中?,javascript,node.js,visual-studio-code,node-modules,importerror,Javascript,Node.js,Visual Studio Code,Node Modules,Importerror,我正在创建一个VSCode扩展,并按照入门指南()使用yeoman scaffold开始。我在同一目录中创建了一个新文件newModule.js,并希望将其作为模块导入主extension.js脚本中。然后我会: const newModule = require('./newModule.js'); 这会引发一个错误: cannot find module 'newModule' require stack: - 如果将文件复制到默认创建的node_modules文件夹中,此问题将消

我正在创建一个VSCode扩展,并按照入门指南()使用yeoman scaffold开始。我在同一目录中创建了一个新文件newModule.js,并希望将其作为模块导入主extension.js脚本中。然后我会:

const newModule = require('./newModule.js');  
这会引发一个错误:

cannot find module 'newModule' require stack: - 
如果将文件复制到默认创建的node_modules文件夹中,此问题将消失。我想知道这里发生了什么,以及处理导入的最佳方式是在使用javascript/Node.js/vs-extensions时


我还注意到node_modules文件夹在默认情况下不会推送到github,为什么?

node_modules文件夹用于存储您正在使用的库和包中的所有代码。它被排除在git之外,因为将它们全部存储在版本控制中是一种浪费空间和分心的行为,因为您可以随时重新下载它们

只需将模块放在相同的
/src
目录中,并使用
import
语法来导入它,而不是
require

import newModule  from './newModule';
例如,请查看示例代码中的操作方法。

请改为

const newModule = require('./newModule.js');  
试试这个

import newModule from './newModule');
//                              ^^ Do not use file extension
还要确保您调用的文件位于同一目录中