前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >BootstrapVue使用入门

BootstrapVue使用入门

作者头像
全栈程序员站长
发布于 2022-09-01 08:16:32
发布于 2022-09-01 08:16:32
10.3K00
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是你们的朋友全栈君。

网站:

bootstrap-vue – npm

Getting Started | BootstrapVueGet started with BootstrapVue, based on the world’s most popular framework – Bootstrap v4, for building responsive, mobile-first sites using Vue.js

https://bootstrap-vue.org/docs

这里有一个能运行的demo实例项目:

bootstrap-vue-admin: bootstrap-vue-admin : admin management system template based on vue + bootstrap-vue + vue-router

https://gitee.com/ikaiguang/bootstrap-vue-admin

入门

开始使用BootstrapVue,它基于世界上最流行的框架 – Bootstrap v4,用于使用Vue.js构建响应迅速,移动优先的站点。

先决条件

在开始使用BootstrapVue之前,您应该熟悉Vue功能和Bootstrap v4.3 CSS。如果您不熟悉Vue和/或Bootstrap,那么好的起点将是:

在许多BootstrapVue文档中的例子,你可能会看到使用,如CSS类 ml-2py-1等等,这是自举V4.3实用程序类。您可以在Utility Classes参考部分中找到有关这些类的信息。

使用模块捆绑包

如果您使用的是webpackrollup.js等模块捆绑,您可能更愿意直接将包包含到项目中。要开始使用,请使用yarnnpm获取最新版本的Vue.js,BootstrapVue和Bootstrap v4:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em># With npm</em></span>
npm i vue bootstrap-vue bootstrap

<span style="color:#a0a1a7"><em># With yarn</em></span>
yarn add vue bootstrap-vue bootstrap</span>

然后,在app入口点注册BootstrapVue插件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// app.js</em></span>
<span style="color:#a626a4">import</span> Vue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'vue'</span>
<span style="color:#a626a4">import</span> BootstrapVue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>

Vue.use(BootstrapVue)</span>

并导入Bootstrap和BootstrapVue css文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// app.js</em></span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap/dist/css/bootstrap.css'</span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap-vue/dist/bootstrap-vue.css'</span></span>

或者scss通过单个自定义SCSS文件导入Bootstrap和BootstrapVue 文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// custom.scss</em></span>
@<span style="color:#a626a4">import</span> <span style="color:#50a14f">'node_modules/bootstrap/scss/bootstrap'</span>;
@<span style="color:#a626a4">import</span> <span style="color:#50a14f">'node_modules/bootstrap-vue/src/index.scss'</span>;</span>
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// app.js</em></span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'custom.scss'</span></span>

包含Bootstrap SCSS()之前,请确保@import或定义自定义变量值,并在此之后包括BootstrapVue SCSS()以确保正确设置变量。bootstrap.scssbootstrap-vue.scss

确保将所有SCSS @import放入单个SCSS文件中,然后将该单个文件导入到项目中。默认情况下,将单个SCSS文件导入项目不会在文件之间共享变量值和函数。

注意需要webpack配置才能加载CSS / SCSS文件(官方指南

有关主题Bootstrap的信息,请查看主题参考部分。

别名Vue导入

BootstrapVue和PortalVue需要访问全局Vue引用(via import Vue from 'vue')。

如果您使用的是特定版本的Vue(即仅运行时与编译器+运行时),则需要'vue'在bundler配置中设置别名,以确保您的项目BootstrapVue和PortalVue都使用相同的构建版本Vue。如果您看到错误,例如"

示例:webpack.config.js中的Vue别名

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#a0a1a7"><em>// ...</em></span>
  resolve: {
    <span style="color:#986801">alias</span>: {
      <span style="color:#a0a1a7"><em>// If using the runtime only build</em></span>
      vue$: <span style="color:#50a14f">'vue/dist/vue.runtime.esm.js'</span> <span style="color:#a0a1a7"><em>// 'vue/dist/vue.runtime.common.js' for webpack 1</em></span>
      <span style="color:#a0a1a7"><em>// Or if using full build of Vue (runtime + compiler)</em></span>
      <span style="color:#a0a1a7"><em>// vue$: 'vue/dist/vue.esm.js'      // 'vue/dist/vue.common.js' for webpack 1</em></span>
    }
  }
}</span>

注意:如果您的项目有多个的WebPack配置文件(即webpack.config.jswebpack.renderer.config.jswebpack.vendor.config.jswebpack.server.config.jswebpack.client.config.js,等),您将需要设置相应的别名在所有的人。

有关 为webpackrollup.jsParcel等设置别名的完整详细信息,请参阅Vue.js指南。

Nuxt.js模块

2.8.1建议使用Nuxt.js版本(或更高版本)。

安装依赖项:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em># With npm</em></span>
npm i bootstrap-vue

<span style="color:#a0a1a7"><em># With yarn</em></span>
yarn add bootstrap-vue</span>

添加bootstrap-vue/nuxtnuxt.config.js的模块部分。

这将包括boostrap.cssbootstrap-vue.css默认预编译CSS。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#986801">modules</span>: [<span style="color:#50a14f">'bootstrap-vue/nuxt'</span>]
}</span>

如果您使用的是自定义Bootstrap SCSS,则可以通过将以下选项设置为以下来禁用自动包含Bootstrap和BootstrapVue预编译的CSS文件false

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#986801">modules</span>: [<span style="color:#50a14f">'bootstrap-vue/nuxt'</span>],
  <span style="color:#986801">bootstrapVue</span>: {
    <span style="color:#986801">bootstrapCSS</span>: <span style="color:#0184bb">false</span>, <span style="color:#a0a1a7"><em>// Or `css: false`</em></span>
    bootstrapVueCSS: <span style="color:#0184bb">false</span> <span style="color:#a0a1a7"><em>// Or `bvCSS: false`</em></span>
  }
}</span>

BootstrapVue的自定义SCSS依赖于Bootstrap SCSS变量和mixins。您可以在项目的自定义SCSS文件中包含Bootstrap和BootstrapVue SCSS:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// custom.scss</em></span>

<span style="color:#a0a1a7"><em>// Custom overrides go first</em></span>
<span style="color:#986801">$grid-breakpoints</span>: (
  xs: <span style="color:#986801">0</span>,
  sm: <span style="color:#986801">480px</span>,
  md: <span style="color:#986801">640px</span>,
  lg: <span style="color:#986801">992px</span>,
  xl: <span style="color:#986801">1300px</span>
);

<span style="color:#a0a1a7"><em>// Then include the following</em></span>
@<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap/scss/bootstrap.scss'</span>;
@<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap-vue/src/index.scss'</span>;

<span style="color:#a0a1a7"><em>// And define any of your custom overrides or additional CSS/SCSS here,</em></span>
<span style="color:#a0a1a7"><em>// or via an @import</em></span></span>

在您的应用程序主入口点包括单个自定义SCSS文件(使用时sass-loader):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// app.js</em></span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'custom.scss'</span></span>

transformAssetUrls与Nuxt.js

v2.0.0-rc.22中的新功能BootstrapVue Nuxt插件模块将自动为您添加BootstrapVue特定的transformAssetUrls 图像src道具配置。

用Nuxt.js摇晃的树

在2.0.0-rc.20增强

如果您希望减少生产包大小,因为您只使用可用的BootstrapVue插件的子集,则可以配置BootstrapVue列表componentPlugins或者directivePlugins要在Nuxt.js项目中全局安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#986801">modules</span>: [<span style="color:#50a14f">'bootstrap-vue/nuxt'</span>],
  <span style="color:#986801">bootstrapVue</span>: {
    <span style="color:#986801">componentPlugins</span>: [
      <span style="color:#50a14f">'LayoutPlugin'</span>,
      <span style="color:#50a14f">'FormPlugin'</span>,
      <span style="color:#50a14f">'FormCheckboxPlugin'</span>,
      <span style="color:#50a14f">'FormInputPlugin'</span>,
      <span style="color:#50a14f">'FormRadioPlugin'</span>,
      <span style="color:#50a14f">'ToastPlugin'</span>,
      <span style="color:#50a14f">'ModalPlugin'</span>
    ],
    <span style="color:#986801">directivePlugins</span>: [<span style="color:#50a14f">'VBPopoverPlugin'</span>, <span style="color:#50a14f">'VBTooltipPlugin'</span>, <span style="color:#50a14f">'VBScrollspyPlugin'</span>]
  }
}</span>

新的2.0.0-rc.20有用于提供两个额外的辅助插件bvModalbvToast注射(如果你不使用 ModalPlugin或ToastPlugin插件),在可用componentPlugins的选项:

  • BVModalPlugin– 提供$bvModal用于生成 消息框的注入。
  • BVToastPlugin– 提供注射$bvToast以生成 按需吐司

2.0.0-rc.20中的新增功能您还可以选择导入单个组件和/或指令,方法是配置BootstrapVue列表components或者 directives要在Nuxt.js项目中进行全局安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#986801">modules</span>: [<span style="color:#50a14f">'bootstrap-vue/nuxt'</span>],
  <span style="color:#986801">bootstrapVue</span>: {
    <span style="color:#986801">components</span>: [<span style="color:#50a14f">'BContainer'</span>, <span style="color:#50a14f">'BRow'</span>, <span style="color:#50a14f">'BCol'</span>, <span style="color:#50a14f">'BFormInput'</span>, <span style="color:#50a14f">'BButton'</span>, <span style="color:#50a14f">'BTable'</span>, <span style="color:#50a14f">'BModal'</span>],
    <span style="color:#986801">directives</span>: [<span style="color:#50a14f">'VBModal'</span>, <span style="color:#50a14f">'VBPopover'</span>, <span style="color:#50a14f">'VBTooltip'</span>, <span style="color:#50a14f">'VBScrollspy'</span>]
  }
}</span>

随意将插件导入与单个组件和指令导入混合搭配。

有关可用插件名称(以及每个插件中包含的组件和指令)以及组件和/或指令导入名称的详细信息,请参阅每个组件指令文档底部的参考部分。

请注意,导入单个组件时,任何组件别名都将不可用。

注意:最佳树抖动仅在Nuxt.js应用程序处于production 模式时有效。不处于production模式(即 dev模式)时,您可能会注意到较大的束大小。

不要使用Nuxt模块如果要将单个BootstrapVue组件导入到 Nuxt应用程序的特定页面和/或组件中。请按照上面的 模块捆绑器部分以及下面的 选择性导入部分进行操作。

使用Nuxt.js传递自定义BootstrapVue配置

如果需要传递自定义 BootstrapVue配置,可以通过在以下位置设置config属性来实现nuxt.config.js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#c18401">module</span>.exports = {
  <span style="color:#986801">modules</span>: [<span style="color:#50a14f">'bootstrap-vue/nuxt'</span>],
  <span style="color:#986801">bootstrapVue</span>: {
    <span style="color:#986801">config</span>: {
      <span style="color:#a0a1a7"><em>// Custom config options here</em></span>
    }
  }
}</span>

使用pretranspiled版本的BootstrapVue for Nuxt.js

Nuxt.js模块使用BootstrapVue的预编译版本来实现更快的开发构建,使用BootstrapVue的source(src/)来实现更高质量的生产构建。

您可以使用usePretranspiled选项覆盖此选项。设置为true始终使用预先转换的版本,而将其设置为false始终使用src/。默认情况usePretranspiled下,仅在开发模式下 启用。您不应该使用此选项,因为默认值对于性能而言是最佳选择。

Vue CLI 2

DEPRECATED使用Vue CLI 3

BootstrapVue有两个可用的Vue CLI模板:

  • webpack-simple:用于概念验证或小应用程序的快速脚手架
  • webpack:更大,生产就绪的模板,有更多选项
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em># Ensure Vue CLI is installed and up to date</em></span>
npm i -g vue-cli

<span style="color:#a0a1a7"><em># Initialize a BootstrapVue project in the directory 'my-project'</em></span>
vue init bootstrap-vue/webpack-simple my-project

<span style="color:#a0a1a7"><em># Change into the directory</em></span>
<span style="color:#c18401">cd</span> my-project

<span style="color:#a0a1a7"><em># Install dependencies</em></span>
npm i

<span style="color:#a0a1a7"><em># Fire up the dev server with HMR</em></span>
npm run dev</span>

您可以重复上述替换命令bootstrap-vue/webpack-simplebootstrap-vue/webpack该模板的WebPack。

Vue CLI 3

与V2不同,Vue CLI 3不使用模板。

在目录中创建一个新项目my-project

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42">npx @vue/cli create my-project</span>

输入my-project目录并安装bootstrap-vue

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42">npm i bootstrap-vue</span>

在引擎盖下,Vue CLI使用webpack,因此我们可以像webpack说明一样注册BootstrapVue插件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a626a4">import</span> Vue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'vue'</span>
<span style="color:#a626a4">import</span> BootstrapVue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>

<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap/dist/css/bootstrap.css'</span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'bootstrap-vue/dist/bootstrap-vue.css'</span>

Vue.use(BootstrapVue)</span>

有关Vue CLI 3的其他配置,以便在各种BootstrapVue组件上使用image src props的项目相对路径,请参阅Image Src Resolving参考页面的Vue CLI 3部分 。

Vue CLI 3插件

作为替代方案,您可以使用 Bootstrap-Vue Vue CLI 3插件来帮助您配置应用程序。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42">vue create my-app
<span style="color:#c18401">cd</span> my-app
vue add bootstrap-vue</span>

这将创建一个具有基本BootstrapVue设置的新应用程序,以启动项目。

将来,此插件将提供更高级配置和模板的选项。

选择性组件和指令包含在模块捆绑器中

在2.0.0-rc.20中简化

使用模块捆绑器时,您可以选择仅导入特定组件组(插件),组件和/或指令。

注意:最佳树抖动仅在webpack 4处于production模式且启用了javascript缩小时才有效 。

组件组和指令作为Vue插件

在2.0.0-rc.22中变化

您可以通过从componentsor directives目录导入来将组件组和指令导入为Vue插件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// This imports all the layout components such as <b-container>, <b-row>, <b-col>:</em></span>
<span style="color:#a626a4">import</span> { LayoutPlugin } <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>
Vue.use(LayoutPlugin)

<span style="color:#a0a1a7"><em>// This imports <b-modal> as well as the v-b-modal directive as a plugin:</em></span>
<span style="color:#a626a4">import</span> { ModalPlugin } <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>
Vue.use(ModalPlugin)

<span style="color:#a0a1a7"><em>// This imports <b-card> along with all the <b-card-*> sub-components as a plugin:</em></span>
<span style="color:#a626a4">import</span> { CardPlugin } <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>
Vue.use(CardPlugin)

<span style="color:#a0a1a7"><em>// This imports directive v-b-scrollspy as a plugin:</em></span>
<span style="color:#a626a4">import</span> { VBScrollspyPlugin } <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span>
Vue.use(VBScrollspyPlugin)</span>

作为插件导入时,大多数情况下都会导入所有子组件和相关指令。即导入时<b-nav><nav-*>还包括所有子组件,以及所有下拉子组件。组件速记别名(如果有)也包含在插件中。有关详细信息,请参阅组件和指令文档。

有两个额外的辅助插件可用于提供bvModalbvToast注入(如果您不使用ModalPlugin或ToastPlugin插件)可从以下位置导入'bootstrap-vue':

  • BVModalPlugin– 提供$bvModal用于生成 消息框的注入。
  • BVToastPlugin– 提供注射$bvToast以生成 按需吐司

个别组件和指令

在2.0.0-rc.22中变化

如果您只想引入特定组件或组件集,可以通过直接导入这些组件来完成此操作。

要挑选组件/指令,首先将其导入到正在使用它的文件中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em>// Place all imports from 'bootstrap-vue' in a single import</em></span>
<span style="color:#a0a1a7"><em>// statement for optimal bundle sizes</em></span>
<span style="color:#a626a4">import</span> { BModal, VBModal } <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span></span>

然后将其添加到组件定义中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42">Vue.component(<span style="color:#50a14f">'my-component'</span>, {
  <span style="color:#986801">components</span>: {
    <span style="color:#50a14f">'b-modal'</span>: BModal
  },
  <span style="color:#986801">directives</span>: {
    <span style="color:#a0a1a7"><em>// Note that Vue automatically prefixes directive names with `v-`</em></span>
    <span style="color:#50a14f">'b-modal'</span>: VBModal
  }
  <span style="color:#a0a1a7"><em>// ...</em></span>
})</span>

或者在全球注册:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42">Vue.component(<span style="color:#50a14f">'b-modal'</span>, BModal)
<span style="color:#a0a1a7"><em>// Note that Vue automatically prefixes directive names with `v-`</em></span>
Vue.directive(<span style="color:#50a14f">'b-modal'</span>, VBModal)</span>

Vue允许使用各种组件和指令名称语法,因此可以随意使用 kebab-casing (示出), camelCasing, PascalCasing和/或对象属性简写(仅限组件)。

浏览器

在HTML <head>部分中添加Boostrap和BootstrapVue CSS URL ,然后添加所需的JavaScript文件。

在支持旧浏览器时(请参阅下面的浏览器支持),您需要在加载Vue和BoostrapVue JavaScript文件之前包含一个用于处理现代JavaScript功能的polyfill。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a0a1a7"><em><!-- Add this to <head> --></em></span>

<span style="color:#a0a1a7"><em><!-- Load required Bootstrap and BootstrapVue CSS --></em></span>
<<span style="color:#e45649">link</span> <span style="color:#986801">type</span>=<span style="color:#50a14f">"text/css"</span> <span style="color:#986801">rel</span>=<span style="color:#50a14f">"stylesheet"</span> <span style="color:#986801">href</span>=<span style="color:#50a14f">"//unpkg.com/bootstrap/dist/css/bootstrap.min.css"</span> />
<<span style="color:#e45649">link</span> <span style="color:#986801">type</span>=<span style="color:#50a14f">"text/css"</span> <span style="color:#986801">rel</span>=<span style="color:#50a14f">"stylesheet"</span> <span style="color:#986801">href</span>=<span style="color:#50a14f">"//unpkg.com/bootstrap-vue@latest/dist/bootstrap-vue.min.css"</span> />

<span style="color:#a0a1a7"><em><!-- Load polyfills to support older browsers --></em></span>
<<span style="color:#e45649">script</span> <span style="color:#986801">src</span>=<span style="color:#50a14f">"//polyfill.io/v3/polyfill.min.js?features=es2015%2CMutationObserver"</span> <span style="color:#986801">crossorigin</span>=<span style="color:#50a14f">"anonymous"</span>></<span style="color:#e45649">script</span>>

<span style="color:#a0a1a7"><em><!-- Load Vue followed by BootstrapVue --></em></span>
<<span style="color:#e45649">script</span> <span style="color:#986801">src</span>=<span style="color:#50a14f">"//unpkg.com/vue@latest/dist/vue.min.js"</span>></<span style="color:#e45649">script</span>>
<<span style="color:#e45649">script</span> <span style="color:#986801">src</span>=<span style="color:#50a14f">"//unpkg.com/bootstrap-vue@latest/dist/bootstrap-vue.min.js"</span>></<span style="color:#e45649">script</span>></span>

构建变体

为构建环境/打包器选择最佳变体有助于减少捆绑包大小。如果您的捆绑器支持es模块,它将自动优先于commonjs。

变种

环境

包路径

ESM模块

webpack 2+ / rollup.js

esm/index.js

ESM捆绑

webpack 2+ / rollup.js

dist/bootstrap-vue.esm.js 要么 dist/bootstrap-vue.esm.min.js

commonjs2

webpack 1 / …

dist/bootstrap-vue.common.js 要么 dist/bootstrap-vue.common.min.js

UMD

浏览器

dist/bootstrap-vue.js 要么 dist/bootstrap-vue.min.js

ES模块

webpack 2+ / rollup.js

es/index.js 在2.0.0-rc.22中弃用

上面列出的所有构建变体都已针对BootstrapVue支持的浏览器进行了预转换。但是,如果你的目标只是现代的浏览器,你可能要导入BootstrapVuesrc/index.js,和白名单bootstrap-vue/src通过自己的项目transpilation。这可能会减少束大小。

BootstrapVue依赖于Popper.js(对于Tooltip,Popover和Dropdown定位),PortalVue (对于toast)和vue-functional-data-merge(对于功能组件)和部分core-js。这四个依赖项包含在UMD捆绑包中。

迁移已使用Bootstrap的项目

如果您已经使用过Bootstrap v4,则可能需要对项目进行一些调整:

  • bootstrap.js从页面脚本或构建管道中删除该文件
  • 如果Bootstrap是唯一依赖的东西jQuery,你可以安全地删除它 – BootstrapVue 依赖于它jQuery
  • 将您的本机Bootstrap HTML标记转换为简化的BootstrapVue自定义组件标记

浏览器支持

CSS

BootstrapVue将与Bootstrap v4.3 CSS / SCSS一起使用。有关Bootstrap v4当前支持的浏览器的更多信息,请参阅 浏览器和设备

JS

BootstrapVue是用Vue.js编写的!因此,您的项目和捆绑包取决于支持哪些浏览器。

BootstrapVue使用以下功能和API

  • ES6(例如Array.from()Array.isArray()Object.assign()Object.is(),等等)
  • Promise
  • MutationObserver

如果你想支持旧的IE,AndroidiOS设备,你可能想要使用 core-jsmutationobserver-shim

  • npm install core-js regenerator-runtime mutationobserver-shim
  • 在应用主入口点导入polyfill:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a626a4">import</span> <span style="color:#50a14f">'core-js/stable"'</span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'regenerator-runtime/runtime'</span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'mutationobserver-shim'</span>
<span style="color:#a626a4">import</span> Vue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'vue'</span>
<span style="color:#a626a4">import</span> BootstrapVue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span></span>

如果使用已弃用的@ babel / polyfill

  • npm install @babel/polyfill mutationobserver-shim
  • 在应用主入口点导入polyfill:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<span style="color:#383a42"><span style="color:#a626a4">import</span> <span style="color:#50a14f">'@babel/polyfill'</span>
<span style="color:#a626a4">import</span> <span style="color:#50a14f">'mutationobserver-shim'</span>
<span style="color:#a626a4">import</span> Vue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'vue'</span>
<span style="color:#a626a4">import</span> BootstrapVue <span style="color:#a626a4">from</span> <span style="color:#50a14f">'bootstrap-vue'</span></span>

或者,使用Polyfill.io通过<script>HTML <head>部分中的标签动态提供特定于浏览器的polyfill 。有关示例,请参阅上面的浏览器部分。

工具支持

VS Code + Vetur

如果您使用VS Code作为文本编辑器,则BootstrapVue在使用Vetur扩展时具有可用的组件属性的智能感知自动完成 功能

Twitter:Vetur + BootstrapVue

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/141776.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
BootstrapVue 入门[每日前端夜话0x62]
Vue.js 是一个流行的 JavaScript 库,用于在短时间内开发原型。这包括用户界面、前端应用、静态网页和本机移动应用。它以易用的语法和简单的数据绑定功能而闻名。
疯狂的技术宅
2019/05/15
2.9K0
分享一篇关于如何使用BootstrapVue的入门指南
BootstrapVue是一个流行的开源前端框架,它结合了Bootstrap(一个前端UI框架)和vue.js(一个渐进式JavaScript框架),用于创建可重用的UI组件和Web应用程序。
前端达人
2023/08/31
1.9K0
分享一篇关于如何使用BootstrapVue的入门指南
【腾讯云 Cloud Studio 实战训练营】沉浸式体验编写一个博客系统
欢迎参加腾讯云 Cloud Studio 实战训练营!在本次训练营中,我们将通过沉浸式体验,带您一步步编写一个基于 Nuxt.js 的静态博客系统。无论您是初学者还是有一定编程经验的开发者,本训练营都将为您提供一个深入了解和掌握 Nuxt.js 技术以及静态网站开发的机会。
全栈若城
2023/08/15
5060
微服务[学成在线] day12:基于 Nuxt.js 构建搜索前端工程
知识点结合实战应用会更有意义,所以这里我就不再对单个知识点进行拆分成单个笔记,内容会比较多,这里我们可以根据目录进行按需阅读。一、搜索前端技术需求
LCyee
2020/08/05
7.2K0
微服务[学成在线] day12:基于 Nuxt.js 构建搜索前端工程
前端面试选择题_vue最新面试题
答:v-model这个指令只能用在表单元素上,可以用他进行双向数据绑定。绑定事件:<input @click=doLog() />
全栈程序员站长
2022/10/02
1.4K0
Nuxt.js实战:Vue.js的服务器端渲染框架
首先,确保你已经安装了Node.js和yarn或npm。然后,通过命令行创建一个新的Nuxt.js项目:
天涯学馆
2024/06/06
1.1K0
vue引入各类ui库 原
本身集成并没有vue的部分,我们采用的方式是把ui-css部分拿来使用,js效果自己用jquery写到methods里
晓歌
2018/12/20
6.4K0
vue引入各类ui库
                                                                            原
7个实用的 Vue.js 工具和库
本文总结了一些最值得关注的工具和库,相信你迟早会用在自己的 Vue.js 项目中。同类文章经常只会列举一些 UI 组件库,而本文涉及的范围更广,探讨了 Vue 生态系统中的一系列工具、库和插件。
王小婷
2020/10/26
3.5K0
PrimeVue 入门
PrimeVue在npm可用,如果您有现有应用程序,请运行以下命令以将PrimeVue和PrimeIcons下载到您的项目
公众号---人生代码
2020/07/30
2.3K0
React.js 结合 Next.js 的入门与 Snapaper 完全重构
背景 申请季开始进入尾声... 前段时间有幸和「哈陆 Halu」一位去年刚入学加拿大滑铁卢大学的 dalao 通过交换友情链接认识了,他的博客链接是 → https://halu.lu ,保存在「伙伴」栏目名为「無位小站」。借着讨论 Nuxt.js 的机会和他聊了一聊,了解了一些他参加的 Co-op 项目和滑大数学系的情况... 他在博文中有提到他收到的另一所学校录取——华盛顿大学(也是 UW 🙂 ) 其世界综合排名会考前很多 (在 2020 US News 世界大学排名中最靠前,第 10 名,实属 da
Tony He
2022/11/17
4.6K0
React.js 结合 Next.js 的入门与 Snapaper 完全重构
博客 Nuxt.js 移植重构与服务端渲染入门实现
背景 前段时间做了一个 COVID-19 的疫情数据每日邮箱推送平台(https://ncov.ouorz.com),本着给自己用的小工具顺便练手的精神,尝试接触了一些新的关于 JavaScript 的技术栈。包括 Vue-Cli、Node.js、MongoDB 等,好不一番爽快的开发体验。顺便一提,这个疫情数据订阅平台我拿着去填写在了 Github Trending 爆火的 wuhan2020 项目(https://github.com/wuhan2020/wuhan2020)举办的「黑客马拉松」报名表里
Tony He
2022/11/17
1.1K0
博客 Nuxt.js 移植重构与服务端渲染入门实现
Webpack5 快速入门
webpack 是代码编译工具,webpack 是一个用于现代 JavaScript 应用程序的静态模块打包工具,俗称: 打包工具
很酷的站长
2022/12/06
5670
Webpack5 快速入门
分享 60 个 关于 Vue 的常见问题汇总及解决方案
因为一些 npm 的包安装需要编译的环境,mac 和 linux 都还好,大多都齐全 window 用户依赖 visual studio 的一些库和python 2+, windows的小伙伴都装上: windows-build-tools python 2.x
前端达人
2023/10/10
6680
分享 60 个 关于 Vue 的常见问题汇总及解决方案
一篇文章,Vue快速入门!!!
MVVM源自于经典的MVC(Model-View-Controller)模式。MVVM的核心是ViewModel层,负责转换Model中的数据对象来让数据变得更容易管理和使用。其作用如下:
全栈程序员站长
2022/08/19
1.9K0
一篇文章,Vue快速入门!!!
前端成神之路-vue前端工程化
小结:推荐使用ES6模块化,因为AMD,CMD局限使用与浏览器端,而CommonJS在服务器端使用。 ES6模块化是浏览器端和服务器端通用的规范.
海仔
2021/03/20
9170
初探webpack之从零搭建Vue开发环境
平时我们可以用vue-cli很方便地搭建Vue的开发环境,vue-cli确实是个好东西,让我们不需要关心webpack等一些繁杂的配置,然后直接开始写业务代码,但这会造成我们过度依赖vue-cli,忽视了webpack的重要性,当遇到一些特殊场景时候,例如Vue多入口的配置、优化项目的打包速度等等时可能会无从下手。当然现在才开始学习vue2 + webpack可能有点晚,毕竟现在都在考虑转移到vue3 + vite了哈哈。
WindRunnerMax
2021/10/20
1.2K1
Vue3 仿京东电商项目 | 首页开发【项目初始化】
npm install之后(有时候项目会自动生成,就无需npm install了), package.json 是 记录第三方库依赖 的目录, node_modules 存放 第三方库依赖模块:
凌川江雪
2022/01/20
1.6K0
Vue3 仿京东电商项目 | 首页开发【项目初始化】
webpack教程:如何从头开始设置 webpack 5
最近开源了一个 Vue 组件,还不够完善,欢迎大家来一起完善它,也希望大家能给个 star 支持一下,谢谢各位了。
前端小智@大迁世界
2020/11/24
2.5K0
webpack教程:如何从头开始设置 webpack 5
如何搭建组件库的最小原型
Dear,大家好,我是“前端小鑫同学”,😇长期从事前端开发,安卓开发,热衷技术,在编程路上越走越远~ 写作背景: 现在其实做的不错的开源 UI 库有很多,我还没有真正的实践过多造一个轮子也没太大必要,但是学习编写的思路和过程还是很有必要的,正好看到慕课的一个视频就顺便总结一下组件库开发的流程,顺便熟悉一个打包的配置和流程。 搭建基础结构: 使用VueCli创建默认模板: 创建名为it200-ui的项目:vue create it200-ui; 使用默认Vue2模板即可,我们只考虑搭建UI库的思路不考虑
前端小鑫同学
2022/12/26
1.3K0
如何搭建组件库的最小原型
Svg矢量图封装使用
炑焽
2024/08/30
4880
相关推荐
BootstrapVue 入门[每日前端夜话0x62]
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档