webpack中dist/bundle.js到底什么鬼?

    (function(modules) { // webpackBootstrap

        // 定义installedModules对象,用来当容器;
        var installedModules = {};

        // The require function
        function __webpack_require__(moduleId) {

            // 先来检查module是否在容器中,如果在就原样输出;
            if(installedModules[moduleId]) {
                return installedModules[moduleId].exports;
            }
            //如果不在,就新建一个module并且把它放进容器中;
            var module = installedModules[moduleId] = {
                i: moduleId,
                l: false,
                exports: {}
            };

            // 执行传进来作为参数的那个函数;
            modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);

            // 标记这个module已经被加载;
            module.l = true;

            // 返回;
            return module.exports;
        }


        // expose the modules object (__webpack_modules__)
        __webpack_require__.m = modules;

        // expose the module cache
        __webpack_require__.c = installedModules;

        // define getter function for harmony exports
        __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;
        };

        // Object.prototype.hasOwnProperty.call
        __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };

        // __webpack_public_path__
        __webpack_require__.p = "";

        // Load entry module and return exports
        return __webpack_require__(__webpack_require__.s = 0);

        
    })
    /************************************************************************/
    ([
        (function(module, exports) {
        console.log(1);
        })
    ]);

总结一下,就是先创建一个容器,然后去检查传入的参数函数是否已经在容器中,确定不在之后,在将它放入到容器中,方便以后调用。

你可能感兴趣的:(webpack中dist/bundle.js到底什么鬼?)