requirejs将JS文件解析为文本并构建所有需求的树......
然后将include包含到HTML文件的头部。
在特定的上下文中,我需要忽略特定文件,例如如果它看到这个,它就不会被添加到HTML文件中:
const { mixinService } = require("devtools/shared/mixinService");
我需要知道如何做到这一点,因为在一个上下文中我需要文件,但在另一个上下文中它会破坏我的所有组件。
让我来描述不同的背景:我在Firefox浏览器上使用Mozilla。脚本可以在特权JS环境中运行,它们可以访问特殊API,也可以在内容中运行(如常规网页)。
mixinService使用其中一些特权API,因此它与内容脚本不兼容,因此上下文具有特权和内容。我们需要在内容流程中运行时忽略require。
答案 0 :(得分:0)
原来你可以使用define来实现这一点,所以在我的例子中它看起来像这样:
define("devtools/shared/mixinService", {
mixinService: {
mixins: []
}
});
require.config({
baseUrl: "resource://devtools-client-jsonview/",
paths: {
"devtools/client/shared": "resource://devtools-client-shared",
"devtools/shared": "resource://devtools/shared",
"devtools/client/shared/vendor/react":
JSONView.debug
? "resource://devtools-client-shared/vendor/react-dev"
: "resource://devtools-client-shared/vendor/react"
}
});
// Load the main panel module
requirejs(["json-viewer"]);
当你知道如何时很容易。