2017-04-01 3 views
0

私はLaravelLaravel Mixを使用しています。組み込みのapp.jsファイルは、jQuery、Bootstrap-Sassなどのようなかなりの依存関係をブートストラップします。Webpack:ソースファイルが空の場合でも、コンパイルされたファイルにJavaScriptコードがあります

app.jsファイルのすべてを削除すると、コンパイルされたjsファイル?それはWebpackのものですか? npm run productionを実行した後でさえ、それはそこにとどまり、私はそれが何をしているのか、それが何を意味するのかわからず、わからないことは私を本当に不快にさせます。

ここで取り残さ取得するコードです:

! function(n) { 
function t(e) { 
    if (r[e]) return r[e].exports; 
    var o = r[e] = { 
     i: e, 
     l: !1, 
     exports: {} 
    }; 
    return n[e].call(o.exports, o, o.exports, t), o.l = !0, o.exports 
} 
var r = {}; 
t.m = n, t.c = r, t.i = function(n) { 
    return n 
}, t.d = function(n, r, e) { 
    t.o(n, r) || Object.defineProperty(n, r, { 
     configurable: !1, 
     enumerable: !0, 
     get: e 
    }) 
}, t.n = function(n) { 
    var r = n && n.__esModule ? function() { 
     return n.default 
    } : function() { 
     return n 
    }; 
    return t.d(r, "a", r), r 
}, t.o = function(n, t) { 
    return Object.prototype.hasOwnProperty.call(n, t) 
}, t.p = "", t(t.s = 3) 
}([function(n, t) {}, function(n, t) {}, function(n, t) {}, function(n, t, r) { 
r(0), r(1), n.exports = r(2) 
}]); 

答えて

1

のWebPACKは正しくモジュールを処理するためのバンドルにいくつかのコードを追加します。このコードは、ウェブパックブートストラップと呼ばれます。コードが何をしているのか知りたいのであれば、uglifiedでないバージョンを見てください。たくさんのコメントがありますが、一般的にその要点を理解するのは簡単ですが、詳細をすべて理解する必要はありません。ここ

非uglifiedコード(これは空のモジュールとバンドル全体)である:

/******/ (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] = { 
/******/   i: moduleId, 
/******/   l: false, 
/******/   exports: {} 
/******/  }; 
/******/ 
/******/  // Execute the module function 
/******/  modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); 
/******/ 
/******/  // Flag the module as loaded 
/******/  module.l = 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; 
/******/ 
/******/ // identity function for calling harmony imports with the correct context 
/******/ __webpack_require__.i = function(value) { return value; }; 
/******/ 
/******/ // 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); 
/******/ }) 
/************************************************************************/ 
/******/ ([ 
/* 0 */ 
/***/ (function(module, exports) { 



/***/ }) 
/******/ ]); 

もESモジュールを処理しながら、基本的にのNode.jsからrequireを模倣しています。これはすべてブラウザ(すべてのブラウザで問題あり)で動作させることです。 Node.js - Modulesも参照してください。

関連する問題