Javascript &引用;“网页包Var注入”;注入错误的值
我在控制台中看到:Javascript &引用;“网页包Var注入”;注入错误的值,javascript,node.js,webpack,webpack-2,Javascript,Node.js,Webpack,Webpack 2,我在控制台中看到: /* 469 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; /* WEBPACK VAR INJECTION */ (function(global, console) { 'use strict'; //core var path = __webpack_require__(20); var assert = __webpack_require__(5); var f
/* 469 */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
/* WEBPACK VAR INJECTION */ (function(global, console) {
'use strict';
//core
var path = __webpack_require__(20);
var assert = __webpack_require__(5);
var fs = __webpack_require__(30);
var util = __webpack_require__(1);
//npm
var colors = __webpack_require__(9);
//project
var sumanUtils = __webpack_require__(13);
var constants = __webpack_require__(10);
////////////////////////////////////////////////////////////////////////////////////
var loaded;
module.exports = function loadSharedObjects(pathObj, projectRoot) {
if (loaded) {
return loaded;
}
if (global.sumanOpts.init) {
return loaded = {};
}
如您所见,它正在包装我的代码,并注入全局变量和控制台变量……然而,我并不真正希望Webpack注入这些变量,因为显然Webpack为这些变量注入了错误的值
我怎样才能使用Webpack
__webpack_require__
到源全局和控制台
确切的问题是,
global.sumanOpts
是未定义的,因此我得到一个错误,它无法读取未定义的属性“init”。这就是为什么我相当肯定Webpack没有为全局注入正确的值。您没有显示传递给注入函数的值(它是一个函数)。尽管如此,我不认为webpack注入了错误的值。看起来您使用的是严格模式,您是使用global.sumanOpts=…
还是仅使用sumanOpts=…
来定义全局模式?在严格模式下,变量不会隐式地变为全局变量。啊,是的,让我来研究在给定IIFE的情况下,哪些变量实际上被注入。