UNPKG

webpack

Version:

Packs CommonJs/AMD modules for the browser. Allows to split your codebase into multiple bundles, which can be loaded on demand. Support loaders to preprocess files, i.e. json, jade, coffee, css, less, ... and your custom stuff.

166 lines (140 loc) 4.38 kB
# example.js ``` javascript // use our loader console.dir(require("./loader!./file")); // use buildin json loader console.dir(require("./test.json")); // default by extension console.dir(require("!json!./test.json")); // manual ``` # file.js ``` javascript exports.foo = "bar"; ``` # loader.js ``` javascript module.exports = function(content) { return "exports.answer = 42;\n" + content; } ``` # test.json ``` javascript { "foobar": 1234 } ``` # js/output.js ``` javascript /******/ (function(modules) { // webpackBootstrap /******/ /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) /******/ return installedModules[moduleId].exports; /******/ /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ exports: {}, /******/ id: moduleId, /******/ loaded: false /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.loaded = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = "js/"; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(0); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /*!********************!*\ !*** ./example.js ***! \********************/ /***/ function(module, exports, __webpack_require__) { // use our loader console.dir(__webpack_require__(/*! ./loader!./file */ 2)); // use buildin json loader console.dir(__webpack_require__(/*! ./test.json */ 1)); // default by extension console.dir(__webpack_require__(/*! json!./test.json */ 1)); // manual /***/ }, /* 1 */ /*!*******************************************!*\ !*** (webpack)/~/json-loader!./test.json ***! \*******************************************/ /***/ function(module, exports, __webpack_require__) { module.exports = { "foobar": 1234 } /***/ }, /* 2 */ /*!*****************************!*\ !*** ./loader.js!./file.js ***! \*****************************/ /***/ function(module, exports, __webpack_require__) { exports.answer = 42; exports.foo = "bar"; /***/ } /******/ ]) ``` # Console output Prints in node.js (`enhanced-require example.js`) and in browser: ``` { answer: 42, foo: 'bar' } { foobar: 1234 } { foobar: 1234 } ``` # Info ## Uncompressed ``` Hash: 547826c0f7b5903a42b6 Version: webpack 1.1.0 Time: 78ms Asset Size Chunks Chunk Names output.js 2360 0 [emitted] main chunk {0} output.js (main) 282 [rendered] > main [0] ./example.js [0] ./example.js 205 {0} [built] [1] (webpack)/~/json-loader!./test.json 36 {0} [built] cjs require !json!./test.json [0] ./example.js 6:12-40 cjs require ./test.json [0] ./example.js 5:12-34 [2] ./loader.js!./file.js 41 {0} [not cacheable] [built] cjs require ./loader!./file [0] ./example.js 2:12-38 ``` ## Minimized (uglify-js, no zip) ``` Hash: 2c75b96c30dd80131187 Version: webpack 1.1.0 Time: 144ms Asset Size Chunks Chunk Names output.js 352 0 [emitted] main chunk {0} output.js (main) 282 [rendered] > main [0] ./example.js [0] ./example.js 205 {0} [built] [1] (webpack)/~/json-loader!./test.json 36 {0} [built] cjs require !json!./test.json [0] ./example.js 6:12-40 cjs require ./test.json [0] ./example.js 5:12-34 [2] ./loader.js!./file.js 41 {0} [not cacheable] [built] cjs require ./loader!./file [0] ./example.js 2:12-38 ```