I am trying to use webpack, version 3.5.5 and requirejs, version 2.3.5. But it seems that webpack cannot solve requirejs.config at the moment. this is a demo:
Webpack configuration
const webpack = require('webpack');
const config = {
entry: './statics/main.js',
output: {
filename: './statics/bundle.js',
}
}
module.exports = config;
main.js
requirejs.config({
baseUrl: './statics',
paths: {
jquery: 'lib/jquery.min',
person: 'person'
}
});
requirejs(['jquery', 'person'], function($, Person) {
console.log($().jquery);
const boy = new Person('bob');
boy.say();
});
bundle.js
define(function() { return (function(modules) {
var installedModules = {};
function __webpack_require__(moduleId) {
if(installedModules[moduleId]) {
return installedModules[moduleId].exports;
}
var module = installedModules[moduleId] = {
i: moduleId,
l: false,
exports: {}
};
modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
module.l = true;
return module.exports;
}
__webpack_require__.m = modules;
__webpack_require__.c = installedModules;
__webpack_require__.d = function(exports, name, getter) {
if(!__webpack_require__.o(exports, name)) {
Object.defineProperty(exports, name, {
configurable: false,
enumerable: true,
get: getter
/******/ });
/******/ }
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
var getter = module && module.__esModule ?
function getDefault() { return module['default']; } :
function getModuleExports() { return module; };
__webpack_require__.d(getter, 'a', getter);
return getter;
};
__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
__webpack_require__.p = "";
return __webpack_require__(__webpack_require__.s = 0);
})
([
(function(module, exports, __webpack_require__) {
undefined;
requirejs(['jquery', 'person'], function($, Person) {
console.log($().jquery);
const boy = new Person('bob');
boy.say();
});
})
])});;
You can see that the web package has completed requirejs.configbefore undefined. I need to understand why?
This will cause the browser to fail to load the script using the current path.