gpt4 book ai didi

javascript - require 和 require 和有什么不一样

转载 作者:太空宇宙 更新时间:2023-11-04 02:48:26 29 4
gpt4 key购买 nike

这两种加杏仁和不加杏仁有什么区别?

require('模块');require(['模块']);

编辑

嵌套:

define(function() { require('module'); }

define(function() { require(['module']); }

前者给出了 requirejs 错误(建议使用梯子)。

我问的原因是,

我正在学习 example-libglobal在如何构建可用作 AMD 模块的库。

我们要导出的库模块:

文件:principium.js

/**
* The main module that defines the public interface for principium,
*/
define(function (require) {
convert = require('principium/convert');

//Return the module value.
return {
convert: convert
};
});

返回库模块的主模块。

文件:lib/main.js

define(function() {
//Use almond's special top-level, synchronous require to
//get the final module value, and export it as the public
//value.
return require('principium');
});

在此示例中,它使用 almond 来要求 principium (return
require('principium')
),我希望返回导出的库对象。

但我不使用杏仁,并且 require('principium') 语法给出错误,如果我使用 require(['principium']) 代替,则不会返回导出的库对象。

导出的库对象,这就是我的意思return {convert:convert};principium.js 中返回。

编辑

我如何正确使用嵌套 require 以便:

var moduleExport = require('module');

按我的预期工作。

编辑

我解决了它,但我不知道它是如何工作的,我在构建中加入杏仁,效果非常神奇。

“include”:[“../bower_components/almond/almond”,“lib/main”]

并重构

文件:lib/main.js

define([], function() {
return require('principium');
});

最佳答案

它是“后者”,因为它是两个选项的后一个子句,而不是梯子,梯子是你爬上或爬下来到达的东西,否则不可能到达海拔。

有了“你知道的越多”这一点:如果你使用 require.js,你不能只需要一个模块:require.js 用于加载依赖项,以便运行一个函数,所以语法是:

require(
['dependency1', 'dependency1',...],
function codetorun(dep1, dep2) { ... }
);

您的函数依赖于 dependency1 等中的代码,因此您“要求”在函数运行之前加载该代码并将其作为函数的变量使用。

仅在模块中进行 require,而不需要它来做某事,就 require.js 而言是没有意义的,因此它会抛出错误。

关于javascript - require 和 require 和有什么不一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25073524/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com