这两个require
语句似乎以相同的方式工作:
var Mypackage = require('mypackage.js');
var Mypackage require('mypackage');
它们之间有区别吗?
答案是:
Module.prototype.load = function(filename) {
debug('load ' + JSON.stringify(filename) +
' for module ' + JSON.stringify(this.id));
assert(!this.loaded);
this.filename = filename;
this.paths = Module._nodeModulePaths(path.dirname(filename));
var extension = path.extname(filename) || '.js';
if (!Module._extensions[extension]) extension = '.js';
Module._extensions[extension](this, filename);
this.loaded = true;
};
http
,fs
等),始终在加载模块中优先。如果给定的模块不是核心模块(例如http
,fs
等),则Node.js将开始搜索名为的目录 node_modules
。
它将从当前目录(相对于Node.JS中当前执行的文件)开始,然后沿文件夹层次结构向上移动,并检查node_modules文件夹的每个级别。一旦Node.JS找到该node_modules
文件夹,它将尝试将给定模块作为(.js)JavaScript文件或命名子目录加载;如果找到命名的子目录,它将尝试以各种方式加载文件。因此,例如
如果您的请求加载模块“utils的”,其目录不是一个.js文件,然后:
node.js的将搜索分层目录node_modules
,并 utils
在以下几个方面:
./node_modules/utils.js
./node_modules/utils/index.js
./node_modules/utils/package.json
如果在上述步骤中Node.JS仍然找不到文件,则Node.js将开始从环境变量 NODE_PATH
(例如,在您的计算机上设置)中查找目录路径(如果在Windows上,显然是由Node.JS安装程序文件设置的)在所有然后上述步骤没有找到,将打印一个堆栈跟踪stder
例如 :有关更多信息:链接在这里,甚至
循环的require() 都得到了很好的解释。 Error:
Cannot find module 'yourfile'
__
本文向大家介绍require和import有什么区别?相关面试题,主要包含被问及require和import有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 1.CommonJS 还是 ES6 Module 输出都可以看成是一个具备多个属性或者方法的对象;default 是 ES6 Module 所独有的关键字 2.export default fs 输出默认的接口对象,import fs
问题内容: 我知道PHP的基本用法要求,需要一次,包含一次和包含一次。但是我对何时使用它们感到困惑。 示例:我有3个文件,例如:settings.php,database.php和index.php。 在database.php文件中,我写道: 然后在index.php中,我写道: 所以我两次加载settings.php,可以吗?有使用这些功能的提示吗? 问题答案: 包含一个文件,如果找不到该文件
问题内容: 模块声明中的 require 和 require静态 模块语句之间有什么区别? 例如: 问题答案: 一条子句表示在编译和运行时需要所需的模块。因此,当模块系统在模块解析(处理模块描述符和解决依赖关系的阶段)期间遇到此类子句时,它将搜索可观察模块(JDK和模块路径中的模块)的范围,并引发错误如果找不到模块。 一个从句表示的依赖是在运行时可选。这意味着在编译时,模块系统的行为完全如上所述。
描述 (Description) 此函数然后它要求脚本需要指定版本的Perl才能在EXPR为数字时继续。 如果EXPR或$ _不是数字,则假定该名称是要包含的库文件的名称。 您不能将此功能包括在同一文件中两次。 包含的文件必须返回一个真值作为最后一个语句。 这与使用的不同之处在于,包含的文件实际上成为当前脚本的附加文本。 函数,变量和其他对象不会导入当前名称空间,因此如果指定的文件包含包定义,则对
JavaScript 加载执行器,可用于同步或异步加载执行任何js文件。 实例: 1、引入js文件 2、配置require-config.js require.config({baseUrl : '.',//可写实际url(http://xxx.com),也可不写group : {//定义控件组'Base' : [ 'Constant', 'DateUtil', 'ValidUtil', 'Bas
问题内容: 在PHP中: 我什么时候应该使用vs. 我什么时候应该使用vs. 问题答案: 也有和。 所以你的问题应该是… 我什么时候应该使用vs. 我什么时候应该使用vs. 这里描述1的答案。 require()函数与include()相同,不同之处在于它对错误的处理方式不同。如果发生错误,include()函数将生成警告,但脚本将继续执行。require()产生致命错误,脚本将停止。 在这里可以