Advertisement
Guest User

Untitled

a guest
Dec 9th, 2016
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.20 KB | None | 0 0
  1. 'use strict';
  2.  
  3. /*
  4. //в модуле пишем, чтобы модуль подгрузился потом
  5. document.getElementById('loginButton').onclick = function() {
  6.  
  7. // ======== Способ 1 (require.ensure) ==
  8. require.ensure([], function(require) {
  9. let login = require('./login');
  10.  
  11. login();
  12. }, 'auth'); //auth имя сборки
  13.  
  14. };
  15.  
  16. document.getElementById('logoutButton').onclick = function() {
  17.  
  18. // ======== Способ 1 (require.ensure) ==
  19. require.ensure([], function(require) {
  20. let logout = require('./logout');
  21.  
  22. logout();
  23. }, 'auth');
  24.  
  25. };
  26.  
  27. */
  28.  
  29.  
  30.  
  31. /*
  32. //для подключения модуля в зависимости от url
  33. let moduleName = location.pathname.slice(1);
  34.  
  35. let handler;
  36. try {
  37. let context = require.context('bundle!./routes/', true, /^\.\// /*фильтр*/
  38. );
  39. handler = context('./' + moduleName);
  40. }
  41. catch (e) {
  42. alert("No such path");
  43. }
  44.  
  45. if (handler) {
  46. handler(function(route) {
  47.  
  48. route();
  49.  
  50. });
  51. } *
  52. /
  53.  
  54. const NODE_ENV = process.env.NODE_ENV || 'development';
  55. const webpack = require('webpack');
  56.  
  57. module.exports = {
  58. context: __dirname + '/frontend',
  59.  
  60. entry: {
  61. app: './app'
  62. },
  63.  
  64. output: {
  65. path: __dirname + '/public/js',
  66. publicPath: '/js/', // /js/app.js
  67. filename: "[name].js"
  68. },
  69.  
  70. plugins: [
  71. //выкидывает из сборки ненужные сборки. Редко используется.
  72. new webpack.IgnorePlugin(/\.\/locale/),
  73. //для объединения кусков модулей в один
  74. new webpack.optimize.LimitChunkCountPlugin(options),
  75. //для объединения кусков модулей в один
  76. new webpack.optimize.MinChunkSizePlugin(options)
  77. //изменяет контекст.
  78. //например я использую moment, который подгружает много модулей с языками
  79. //чтобы подгрузить только нужные модули используется этот плагин. Скринкаст 4.
  80. new webpack.ContextReplacementPlugin(
  81. resourceRegExp, [newContentResource], [newContentRecursive], [newContentRegExp])
  82. ]
  83.  
  84. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement