vue-cli+webpack在生成的項目中使用bootstrap

来源:http://www.cnblogs.com/kongxianghai/archive/2017/05/25/6903027.html
-Advertisement-
Play Games

在也個html頁面中加入bootstrap是很方便,就是一般的將css和js文件通過Link和Script標簽就行。 那麼在一個用vue-vli生成的前端項目中如何加入?因為框架不一樣了,略微要適應一下。 腳手架生成項目 執行命令用webpack模板生成一個名為vuestrap的項目(名字任意) 在 ...


在一個html頁面中加入bootstrap是很方便,就是一般的將css和js文件通過Link和Script標簽就行。

那麼在一個用vue-vli生成的前端項目中如何加入?因為框架不一樣了,略微要適應一下。

 

腳手架生成項目

執行命令用webpack模板生成一個名為vuestrap的項目(名字任意)

vue init webpack vuestrap

 

在出現的各提示選項中,沒什麼要求,為了方便,把不用的ESLint,unit tests,e2e都關掉(這些選項都隨意)。

? Project name vuestrap
? Project description A Vue.js project
? Author 省略
? Vue build standalone
? Install vue-router? Yes
? Use ESLint to lint your code? No
? Setup unit tests with Karma + Mocha? No
? Setup e2e tests with Nightwatch? No

選項選完,項目也就生成了。

 

執行命令,安裝腳手架創建的組件

npm install

 

安裝jquery

bootstrap是依賴jquery的,所以就先裝上jquery,這裡用的版本是1.11.3。

稍後在配置的時候,是以webpack插件的方式進行打包,所以這裡直接用npm進行安裝,因為插件方式打包的組件都是require進來的。

執行命令,並保存到package.json中

npm install [email protected] --save-dev

註:如果想查看npm上jquery有哪些版本,可以執行命令:

npm view jquery versions

 

下載和安置bootstrap所需的文件 

下載bootstrap包,這裡用的版本是3.3.0。

下載下來後將fonts,js,css文件夾分別放到項目目錄/src/assets下。

 

配置jquery 

將jquery以插件打包,需要為webpack的plugins進行插件設置。

在build/webpack.base.conf.js文件中,在整個配置對象的末尾增加plugins配置。

在webpack.base.conf.js中的配置項,可以在dev和build出來的pro版本中都有效。

下麵的配置其實就是變數名的真正指向設置,這樣,在頁面中對jquery的各種名字的調用就會有效,否則bootstrap跑不起來。

  plugins: [
    new webpack.ProvidePlugin({
      $: "jquery",
      jQuery: "jquery",
      "windows.jQuery": "jquery"
    })
  ]

 

引用bootstrap 

在src/main.js文件的頂部加入如下對bootstrap主要文件的引用。

import './assets/css/bootstrap.min.css'
import './assets/js/bootstrap.min'

做完這個,也就配完了。

接下去試試看能不能用,就寫個簡單的頁面。

 

配置bootstrap

因為bootstrap除了js和css文件外,還有字體文件需要一併打包,預設生成的webpack.base.conf.js中的moudle->rules設定中都已經包含對字體文件的打包設置,所以無需修改,很人性啊。

  

驗證頁面

就在App.vue中寫一個頁面,放一個panel,button,modal。

<template>
  <div id="app">
    <div class='container'>
      <div class='row'>
        <div class='col-lg-4'>
          <h1>demo</h1>
        </div>

        <div class='col-lg-8'>
          <div class='panel panel-default' style='min-width:500px;box-shadow:4px 4px 10px #888888;'>
            <div class="panel-heading">
              <button id='btnCreate'>
                <span class="glyphicon glyphicon-plus"></span>
              </button>
              <span>&nbsp;&nbsp;&nbsp;</span>
            </div>
            <div class="panel-body">
              <div style='float: left;width:100%'>

                <button type="button" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">
                  Launch demo modal
                </button>

                <!-- Modal -->
                <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                  <div class="modal-dialog" role="document">
                    <div class="modal-content">
                      <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
                      </div>
                      <div class="modal-body">
                        ...
                      </div>
                      <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                        <button type="button" class="btn btn-primary">Save changes</button>
                      </div>
                    </div>
                  </div>
                </div>

              </div>
            </div>
          </div>
        </div>

      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'app'
}
</script>

<style>
#app {
  margin-top: 60px;
}
</style>

寫完後,執行命令,運行效果。

npm run dev

效果:

點擊按鈕,可以打開modal。

 

 

代碼

 

End


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • HTMLcanvas矩形陣雨 在畫布上執行 獲取製圖環境 全屏獲取屏幕寬度和屏幕高度 確定每個文字的寬度 以確定列 迴圈輸出 定時器調用 HTML 部分 CSS 部分 Javascript 部分 此文到此結束 我始終相信這個世界上充滿了美好與希望 加油! ...
  • h5的播放器樣式設置,通過jquery和js原生代碼共同實現 ...
  • js中的5中基本數據類型 js標識符 關鍵字: 保留字: js註釋 js模式 嚴格模式:使用 use strict 混雜模式:不加 use strict js數據類型 js中有5中簡單數據類型,也成為基本數據類型:Undefined, Null, Boolean, Number, String js ...
  • flex在眾多手機瀏覽器上的相容方案(親測華為手機自帶瀏覽器) 如果項目使用構建工具,可加autoprefixer來處理,[autoprefixer使用指南] 純手寫css相容代碼,需給每個使用的屬性加上屬性首碼 /*display: flex;寫法*/ span { display: -webki ...
  • f 指令 語法比較簡單,直接上代碼: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title></title ...
  • MIME (Multipurpose Internet Mail Extensions) 是描述內容類型的互聯網標準。Clients use this content type or media type header to select an appropriate viewer applicat ...
  • ...
  • 描述:這段時間給公司做個後臺管理系統,功能差不錯實現了,回過頭來吧登錄頁完善下,剛好碰到了‘記住用戶名‘這個小東西。之前有看過不少代碼,都沒有太留意這部分,這次自己從頭至尾做,那就好好的處理下。 目的:用戶在登錄的時候勾選“記住我”,登錄、退出之後,用戶再次來到登錄頁,預設填寫上次登錄的用戶信息。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...