Как ускорить разработку веб-пакетов - PullRequest
0 голосов
/ 21 декабря 2018

Вопрос:

Можно ли также настроить веб-пакет для работы в режиме fast development ?

Если бы это было похоже на редактирование файлов без упаковщика.Внесите изменения - просмотрите в браузере немедленно.

Немного контекста:

Насколько я знаю, цель использования веб-пакета - упаковать то, что вам нужно, в как можно меньше файлов ибыть в состоянии очистить require() между файлами .js, но у него есть большой недостаток: от нескольких секунд до нескольких минут для его построения, что полностью разрушает пространство разработчиков при попытке просмотреть быстрые изменения.

Конкретные детали настройки медленного веб-пакета:

Я использую weback.config, созданный коллегой, который объединяет и uglifys файлы и пакеты с целью иметь модуляцию js и быстрыйпроизводственный веб-сайт:

Webpack.config:

var path = require('path');
var webpack = require('webpack');
const UglifyJsPlugin = require('uglifyjs-webpack-plugin');

module.exports = {
  mode: "none",
  entry: {
    "physiomeportal": "./src/index.js",
    "physiomeportal.min": "./src/index.js",
  },
  output: {
    path: path.resolve(__dirname, 'build'),
    filename: "[name].js",
    library: 'physiomeportal',
    libraryTarget: 'umd',
    globalObject: 'this'
  },
  module: {
    rules: [
      { test: /\.(html)$/, use: [{ loader: 'html-loader' }]},
      { test: /\.css$/, use: [ 'style-loader', 'css-loader' ] },
      { test: /\.(jpe?g|gif)$/i,
        loader:"file-loader",
        query:{
          name:'[name].[ext]',
          outputPath:'images/' }
      },
      { test: /\.(vs|fs)$/i,
        loaders: [
          'raw-loader'
        ]
      },
      { test: /\.(png|woff|woff2|eot|ttf|svg)$/, loader: 'url-loader?limit=100000' }
    ]
  },
  plugins: [
    new UglifyJsPlugin({
      include: /\.min\.js$/,
      uglifyOptions: {
        compress: true
      }
    }),
    new webpack.ProvidePlugin({
      $: "jquery",
      jQuery: "jquery",
      "window.jQuery": "jquery",
      "window.$": "jquery"
    })
  ]
};

Я использую npm run build каждый раз, когда хочу увидеть изменения в файле, использующем require()

1 Ответ

0 голосов
/ 08 января 2019

Webpack-dev-server

Начните с использования webpack-dev-server .

Имеется опция ' горячая перезагрузка 'где только измененные элементы вашего приложения будут перестроены.Он предназначен для настройки в браузере без обновления, но в зависимости от вашего приложения эта функция не всегда работает.

Установите его, используя

npm install webpack-dev-server --save-dev

Добавьте его в свойwebpack.config

"scripts": {
  ...,
  "start:hotdev": "webpack-dev-server --hot",
  ...
}

Запустите его

npm run start:hotdev
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...