freeCodeCamp/guide/russian/miscellaneous/running-webpack-and-webpack.../index.md

6.5 KiB
Raw Blame History

title localeTitle
Running Webpack and Webpack Dev Server Запуск Webpack и Webpack Dev Server

Пришло время использовать Webpack. Поскольку Webpack установлен глобально, мы можем запустить следующее в нашем терминале:

webpack 

Это запустит наш файл webpack.config.js . Он должен работать успешно, и мы должны увидеть что-то подобное в нашем терминале:

Hash: 2474b15611d8d75c5a39 
 Version: webpack 1.12.14 
 Time: 1721ms 
    Asset    Size  Chunks             Chunk Names 
 bundle.js  679 kB       0  <a href='https://webpack.github.io/docs/webpack-dev-server.html' target='_blank' rel='nofollow'>emitted]  main 
    + 159 hidden modules 

Обратите внимание, что это относится к Asset называемому bundle.js . Webpack сообщает нам, что этот файл был создан, когда мы запустили команду webpack . Проверьте свою папку dist , и вы увидите свой bundle.js вместе с вашим index.html .

Теперь наше дерево будет выглядеть так:

. 
 ├── dist 
 |   ├── bundle.js 
 │   └── index.html 
 ├── node_modules 
 ├── package.json 
 ├── src 
 │   └── js 
 │       └── client.js 
 └── webpack.config.js 

Итак, теперь, когда у нас есть dist/bundle.js , наш файл dist/index.html теперь ссылается на файл, который существует! Если мы посмотрим на bundle.js , мы увидим, что это набор всех файлов JavaScript в нашем проекте. Круто!

Идем дальше и ищем какое-то содержимое нашего dist/bundle.js , например, This is one cool app! , Мы можем видеть его контекст в файле, он находится в странном методе:

_createClass(Main, [{ 
  key: 'render', 
  value: function render() { 
    return _react2.default.createElement( 
      'div', 
      null, 
      _react2.default.createElement( 
        'h1', 
        null, 
        'This is one cool app!' 
      ) 
    ); 
  } 
 }]); 

Это то, что сделал Вавилон; он преобразовал код в ES5 и связал его с другими файлами JavaScript, включая все наши модули узлов, конечно. Теперь все наши файлы React могут ссылаться на этот пакет, используя инструкции import ES6.

Наконец, пришло время проверить приложение в браузере. Для этого мы собираемся использовать Webpack Dev Server, который представляет собой многофункциональный инструмент, который можно использовать для настройки сервера localhost для разработки целей при использовании Webpack.

  • Помощь: больше о Webpack Dev Server
    
    

Идите вперед и бегите:

webpack-dev-server --content-base dist 

Нам нужно --content-base dist чтобы указать базу контента на Webpack Dev Server, чтобы он знал, где --content-base dist файлы для обслуживания; в этом случае это папка dist , потому что это папка, которую мы используем для производства, в отличие от папки src , которую мы используем для разработки *.

В нашем терминале мы должны увидеть что-то вроде следующего:

http://localhost:8080/webpack-dev-server/ 
 webpack result is served from / 
 content is served from /Code/react-webpack-example/dist 
 Hash: 2474b15611d8d75c5a39 
 Version: webpack 1.12.14 
 Time: 3738ms 

После этого будет очень длинный список всех файлов, dist/bundle.js в dist/bundle.js через Webpack. Удивительно!

webpack-dev-server время перейти к URL-адресу, предоставленному этой командой webpack-dev-server , http://localhost:8080/ . Мы должны увидеть страницу с h1 которая гласит:

This is one cool app! 

Давайте посмотрим на панель «Элементы» наших инструментов разработчика. Мы должны иметь следующее:

<!DOCTYPE html> 
 <html lang="en"> 
 <head> 
  <meta charset="UTF-8"> 
  <title>React Webpack Example</title> 
  <style type="text/css"></style> 
 </head> 
 <body> 
  <!-- React app will be injected into the following `div` element: --> 
  <div id="app"> 
    <div data-reactid=".0"> 
      <h1 data-reactid=".0.0">This is one cool app!</h1> 
    </div> 
  </div> 
  <!-- Include bundled JavaScript: --> 
  <script src="bundle.js"></script> 
 </body> 
 </html> 

Если мы это src/js/client.js в src/js/client.js , мы увидим, как React отображает в dist/index.html .

Если вы добрались до этого, молодцы! Теперь вы знаете, как настроить рабочее пространство с помощью кода React, Webpack и ES6, что является удивительным, и дает вам отправную точку для создания впечатляющих веб-приложений с использованием передовых технологий.

В следующем уроке мы рассмотрим несколько дополнительных шагов, в том числе:

  • Более подробно с React
  • Рассматривая некоторые другие интересные функции Webpack, такие как компиляция файлов Sass
  • Используя minification на нашем dist/bundle.js

Дополнительная информация:

Веб-сайт

Webpack Github

webpack-dev-сервер Github