VUE引入jquery bootstrap 之終極解決方案

介紹

用vue-cli搭建工程項目引入jQuery 和bootstrap的解決方法。
參考文獻:vue.js官網bootstrap下載

安裝、初始化項目

1. npm安裝vue-cli腳手架

 npm install -g vue-cli                 //  全局安裝vue-cli

2.用webpack下載模板並初始化項目

vue init webpack cnm               //   生成項目名爲cnm的的項目模板,cnm自定義

需要手動修改一些設置項,有其他需要的,相關配置項選擇yes,沒有特殊需要的可以按照圖二進行配置
下載模板
在這裏插入圖片描述

配置項說明:
? Project name 輸入項目名稱
? Project description 輸入項目描述
? Author 作者
? Vue build 打包方式,–回車就好了
? Install vue-router? 選擇 Y 使用 vue-router,輸入 Y使用
? Use ESLint to lint your code? 代碼規範,推薦 N
? Setup unit tests with Karma + Mocha? 單元測試,推薦 N
? Setup e2e tests with Nightwatch? E2E測試,N

轉至目錄

3.工程目錄說明

目錄說明
具體各個文件夾及文件的用處和含義見工程文件目錄說明
.
.
.

4.啓動項目

然後輸入npm run dev。。不出意外瀏覽器會自動彈出一個歡迎頁面,如果不自動彈出就打開http://localhost:8080出現以下頁面
vue啓動頁面

引入jquery

  • 輸入 npm install jquery --save-dev 用npm下載jq依賴、
  • 找到build文件夾下的webpack.base.conf.js文件打開,修改配置:

加入webpack對象:
var webpack=require('webpack');

在module.exports裏面加入:

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

在入口文件main.js中加入 import $ from 'jquery'

轉至目錄

引入Bootstrap

修改build文件中的webpack.base.conf.js文件:在resolve對象中加入

alias: {  
              'vue$': 'vue/dist/vue.esm.js',  
              '@': resolve('src'),  
              'assets': path.resolve(__dirname, '../src/assets'),  
              'jquery': "jquery/src/jquery"  
            }  

alias

在入口文件main.js中加入

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

將下載好的bootstrap文件放入assets文件夾中 對應上一步的路徑 bootstrap下載
拷貝文件

轉至目錄

測試

試試bootstrap引入成功沒:

打開HelloWorld.vue文件 用以下代碼替換掉

<template>
  <nav class="navbar navbar-default" role="navigation">
    <div class="container-fluid">
      <!-- Brand and toggle get grouped for better mobile display -->
      <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="#">{{ msg }}</a>
      </div>
 
      <!-- Collect the nav links, forms, and other content for toggling -->
      <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
        <ul class="nav navbar-nav">
          <li class="active"><a href="#">Link</a></li>
          <li><a href="#">Link</a></li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu" role="menu">
              <li><a href="#">Action</a></li>
              <li><a href="#">Another action</a></li>
              <li><a href="#">Something else here</a></li>
              <li class="divider"></li>
              <li><a href="#">Separated link</a></li>
              <li class="divider"></li>
              <li><a href="#">One more separated link</a></li>
            </ul>
          </li>
        </ul>
        <form class="navbar-form navbar-left" role="search">
          <div class="form-group">
            <input type="text" class="form-control" placeholder="Search">
          </div>
          <button type="submit" class="btn btn-default">Submit</button>
        </form>
        <ul class="nav navbar-nav navbar-right">
          <li><a href="#">Link</a></li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu" role="menu">
              <li><a href="#">Action</a></li>
              <li><a href="#">Another action</a></li>
              <li><a href="#">Something else here</a></li>
              <li class="divider"></li>
              <li><a href="#">Separated link</a></li>
            </ul>
          </li>
        </ul>
      </div><!-- /.navbar-collapse -->
    </div><!-- /.container-fluid -->
  </nav>
</template>

打開命令窗口, npm run dev 如果引入成功 效果如下

在這裏插入圖片描述

拓展小知識

轉至目錄

轉至目錄

發佈了17 篇原創文章 · 獲贊 8 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章