Webpack
ຮຽນຮູ້ວິທີການລວມ Bootstrap ໃນໂຄງການຂອງທ່ານໂດຍໃຊ້ Webpack 3.
ຕິດຕັ້ງ bootstrap ເປັນໂມດູນ Node.js ໂດຍໃຊ້ npm.
ນໍາເຂົ້າ JavaScript ຂອງ Bootstrap ໂດຍການເພີ່ມເສັ້ນນີ້ໃສ່ຈຸດເຂົ້າຂອງແອັບຯຂອງທ່ານ (ປົກກະຕິແລ້ວ index.js
ຫຼື app.js
):
import 'bootstrap';
ອີກທາງເລືອກ, ທ່ານສາມາດ ນໍາເຂົ້າ plugins ສ່ວນບຸກຄົນ ຕາມຄວາມຕ້ອງການ:
import 'bootstrap/js/dist/util';
import 'bootstrap/js/dist/dropdown';
...
Bootstrap ແມ່ນຂຶ້ນກັບ jQuery ແລະ Popper , ເຫຼົ່ານີ້ຖືກກໍານົດເປັນ peerDependencies
, ນີ້ຫມາຍຄວາມວ່າທ່ານຈະຕ້ອງໃຫ້ແນ່ໃຈວ່າຈະເພີ່ມພວກມັນທັງສອງເຂົ້າໃນການ package.json
ນໍາໃຊ້ ຂອງທ່ານ npm install --save jquery popper.js
.
ສັງເກດວ່າຖ້າຫາກວ່າທ່ານເລືອກທີ່ຈະ ນໍາເຂົ້າ plugins ເປັນສ່ວນບຸກຄົນ , ທ່ານຍັງຕ້ອງໄດ້ຕິດຕັ້ງ exports-loader
ເພື່ອເພີດເພີນໄປກັບທ່າແຮງອັນເຕັມທີ່ຂອງ Bootstrap ແລະປັບແຕ່ງມັນຕາມຄວາມຕ້ອງການຂອງທ່ານ, ໃຫ້ໃຊ້ໄຟລ໌ຕົ້ນສະບັບເປັນສ່ວນໜຶ່ງຂອງຂັ້ນຕອນການມັດໂຄງການຂອງທ່ານ.
ກ່ອນອື່ນ ໝົດ, ສ້າງຕົວຂອງທ່ານເອງ _custom.scss
ແລະໃຊ້ມັນເພື່ອ override ຕົວແປທີ່ກໍານົດເອງ . ຫຼັງຈາກນັ້ນ, ໃຊ້ໄຟລ໌ sass ຕົ້ນຕໍຂອງທ່ານເພື່ອນໍາເຂົ້າຕົວແປທີ່ກໍາຫນົດເອງຂອງທ່ານ, ຕິດຕາມດ້ວຍ Bootstrap:
@import "custom";
@import "~bootstrap/scss/bootstrap";
ສໍາລັບ Bootstrap ເພື່ອລວບລວມ, ໃຫ້ແນ່ໃຈວ່າທ່ານຕິດຕັ້ງແລະນໍາໃຊ້ຕົວໂຫລດທີ່ຕ້ອງການ: sass-loader , postcss-loader ກັບ Autoprefixer . ດ້ວຍການຕັ້ງຄ່າໜ້ອຍທີ່ສຸດ, ການຕັ້ງຄ່າ webpack ຂອງທ່ານຄວນມີກົດລະບຽບນີ້ ຫຼືຄ້າຍຄືກັນ:
...
{
test: /\.(scss)$/,
use: [{
loader: 'style-loader', // inject CSS to page
}, {
loader: 'css-loader', // translates CSS into CommonJS modules
}, {
loader: 'postcss-loader', // Run post css actions
options: {
plugins: function () { // post css plugins, can be exported to postcss.config.js
return [
require('precss'),
require('autoprefixer')
];
}
}
}, {
loader: 'sass-loader' // compiles Sass to CSS
}]
},
...
ອີກທາງເລືອກ, ທ່ານສາມາດໃຊ້ css ພ້ອມທີ່ຈະໃຊ້ຂອງ Bootstrap ໂດຍພຽງແຕ່ເພີ່ມເສັ້ນນີ້ໃສ່ຈຸດເຂົ້າຂອງໂຄງການຂອງທ່ານ:
import 'bootstrap/dist/css/bootstrap.min.css';
ໃນກໍລະນີນີ້, ທ່ານສາມາດນໍາໃຊ້ກົດລະບຽບທີ່ມີຢູ່ແລ້ວຂອງທ່ານ css
ໂດຍບໍ່ມີການດັດແປງພິເສດໃດໆກັບ webpack config ຍົກເວັ້ນທ່ານບໍ່ຕ້ອງການ sass-loader
ພຽງແຕ່ style-loader ແລະ css-loader .
...
module: {
rules: [
{
test: /\.css$/,
use: ['style-loader', 'css-loader']
}
]
}
...