Перейти к основному содержанию Перейти к навигации по документам
Check
in English

Начальная загрузка и посылка

Официальное руководство по включению и объединению CSS и JavaScript Bootstrap в ваш проект с помощью Parcel.

Хотите перейти к концу? Загрузите исходный код и рабочую демонстрацию для этого руководства из репозитория twbs/examples . Вы также можете открыть пример в StackBlitz, но не запускать его, потому что Parcel в настоящее время там не поддерживается.

Настраивать

Мы создаем проект Parcel с Bootstrap с нуля, поэтому есть некоторые предварительные условия и предварительные шаги, прежде чем мы действительно сможем начать. Это руководство требует, чтобы у вас был установлен Node.js и вы немного знакомы с терминалом.

  1. Создайте папку проекта и настройте npm. Мы создадим my-projectпапку и инициализируем npm с -yаргументом, чтобы он не задавал нам все интерактивные вопросы.

    mkdir my-project && cd my-project
    npm init -y
    
  2. Установить Посылку. В отличие от нашего руководства по Webpack, здесь есть только одна зависимость от инструмента сборки. Parcel автоматически установит языковые преобразователи (например, Sass) по мере их обнаружения. Мы используем --save-dev, чтобы указать, что эта зависимость предназначена только для использования в разработке, а не для производства.

    npm i --save-dev parcel
    
  3. Установите бутстрап. Теперь мы можем установить Bootstrap. Мы также установим Popper, так как наши раскрывающиеся списки, всплывающие окна и всплывающие подсказки зависят от его позиционирования. Если вы не планируете использовать эти компоненты, вы можете опустить здесь Popper.

    npm i --save bootstrap @popperjs/core
    

Теперь, когда у нас установлены все необходимые зависимости, мы можем приступить к созданию файлов проекта и импорту Bootstrap.

Структура проекта

Мы уже создали my-projectпапку и инициализировали npm. Теперь мы также создадим нашу srcпапку, таблицу стилей и файл JavaScript, чтобы завершить структуру проекта. Запустите следующее из my-projectили вручную создайте структуру папок и файлов, показанную ниже.

mkdir {src,src/js,src/scss}
touch src/index.html src/js/main.js src/scss/styles.scss

Когда вы закончите, ваш полный проект должен выглядеть так:

my-project/
├── src/
│   ├── js/
│   │   └── main.js
│   ├── scss/
│   │   └── styles.scss
│   └── index.html
├── package-lock.json
└── package.json

На данный момент все в правильном месте, но Parcel нужна HTML-страница и скрипт npm для запуска нашего сервера.

Настроить посылку

С установленными зависимостями и готовой папкой нашего проекта для начала написания кода мы теперь можем настроить Parcel и запустить наш проект локально. Parcel сам по себе не требует файла конфигурации, но нам нужен скрипт npm и файл HTML для запуска нашего сервера.

  1. Заполните src/index.htmlфайл. Parcel нужна страница для рендеринга, поэтому мы используем нашу index.htmlстраницу для настройки базового HTML, включая файлы CSS и JavaScript.

    <!doctype html>
    <html lang="en">
      <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Bootstrap w/ Parcel</title>
        <link rel="stylesheet" href="scss/styles.scss">
        <script type="module" src="js/main.js"></script>
      </head>
      <body>
        <div class="container py-4 px-3 mx-auto">
          <h1>Hello, Bootstrap and Parcel!</h1>
          <button class="btn btn-primary">Primary button</button>
        </div>
      </body>
    </html>
    

    Мы добавили сюда немного стилей Bootstrap с помощью div class="container"и <button>, чтобы мы могли видеть, когда CSS Bootstrap загружается с помощью Webpack.

    Parcel автоматически обнаружит, что мы используем Sass, и установит плагин Sass Parcel для его поддержки. Однако при желании вы также можете запустить вручную npm i --save-dev @parcel/transformer-sass.

  2. Добавьте скрипты Parcel npm. Откройте package.jsonи добавьте к объекту следующий startскрипт . scriptsМы будем использовать этот скрипт для запуска нашего сервера разработки Parcel и рендеринга HTML-файла, который мы создали после того, как он скомпилирован в distкаталог.

    {
       // ...
       "scripts": {
         "start": "parcel serve src/index.html --public-url / --dist-dir dist",
         "test": "echo \"Error: no test specified\" && exit 1"
       },
       // ...
    }
    
  3. И, наконец, мы можем запустить Parcel. Из my-projectпапки в вашем терминале запустите этот недавно добавленный скрипт npm:

    npm start
    
    Сервер разработки Parcel работает

В следующем и последнем разделе этого руководства мы импортируем весь CSS и JavaScript Bootstrap.

Импорт начальной загрузки

Для импорта Bootstrap в Parcel требуется два импорта: один в наш styles.scssи один в наш main.js.

  1. Импортируйте CSS Bootstrap. Добавьте следующее, src/scss/styles.scssчтобы импортировать весь исходный код Bootstrap Sass.

    // Import all of Bootstrap's CSS
    @import "~bootstrap/scss/bootstrap";
    

    Вы также можете импортировать наши таблицы стилей по отдельности, если хотите. Подробнее читайте в нашей документации по импорту Sass .

  2. Импортируйте JS Bootstrap. Добавьте следующее, src/js/main.jsчтобы импортировать весь JS Bootstrap. Поппер будет автоматически импортирован через Bootstrap.

    // Import all of Bootstrap's JS
    import * as bootstrap from 'bootstrap'
    

    Вы также можете импортировать плагины JavaScript по отдельности, если это необходимо, чтобы уменьшить размеры пакетов:

    import Alert from 'bootstrap/js/dist/alert'
    
    // or, specify which plugins you need:
    import { Tooltip, Toast, Popover } from 'bootstrap'
    

    Прочтите нашу документацию по JavaScript для получения дополнительной информации о том, как использовать плагины Bootstrap.

  3. И вы сделали! 🎉 Теперь, когда исходный код Bootstrap Sass и JS полностью загружены, ваш локальный сервер разработки должен выглядеть так.

    Сервер Parcel dev, работающий с Bootstrap

    Теперь вы можете начать добавлять любые компоненты Bootstrap, которые хотите использовать. Обязательно ознакомьтесь с полным примером проекта Parcel , чтобы узнать, как включить дополнительный пользовательский Sass и оптимизировать сборку, импортируя только те части Bootstrap CSS и JS, которые вам нужны.


Видите здесь что-то неправильное или устаревшее? Пожалуйста , откройте вопрос на GitHub . Нужна помощь в устранении неполадок? Найдите или начните обсуждение на GitHub.