SpringBoot2和Vue全棧開發學習-前端環境搭建

一、安裝NodeJS環境

在進行vue前端項目開發中,將用到以下相關框架類庫

  1. Vue2.6.10
  2. Vuex
  3. VueRouter
  4. WebPack4
  5. Axios
  6. Ant-designer-vue

webpack是基於NodeJS環境的, 在開發之前先安裝NodeJS環境。

開發工具採用IDEA2018.8,IDEA安裝了Vue插件,JavaScript版本設置支持ES6

二、創建工程目錄

1.創建工程目錄 mkdir fire-admin,初始化工程目錄 , npm init 在項目中引導創建一個package.json文件

fire-admin

創建相關子目錄和文件如下

mkdir

用IDEA 打開新建的工程目錄如下

idea

三、安裝依賴包

1.安裝運行時依賴:vue、vuex、vuerouter

vueinstall

2.安裝運行時依賴:axios和ant-design-vue

anted

3.安裝開發依賴:webpack。cnpm i webpack -D、cnpm  i  webpack-cli -D、cnpm i webpack-dev-server -D

4.安裝開發依賴:第三方 loader 加載器

  • cnpm i [email protected] -D
  • cnpm i file-loader -D
  • cnpm i less -D
  • cnpm  i less-loader -D
  • cnpm i css-loader -D
  • cnpm i url-loader -D
  • cnpm i style-loader -D
  • cnpm i vue-loader -D

5.安裝開發依賴:babel

  • cnpm i babel-core -D
  • cnpm i babel-plugin-transform-runtime -D
  • cnpm i babel-preset-env -D
  • cnpm i babel-preset-stage-0 -D

6.安裝開發依賴:其他

  • cnpm i html-webpack-plugin -D
  • cnpm i vue-template-compiler -D

四、配置相關文件

package.json文件 配置scripts值,完整的如下

{
  "name": "fire-admin",
  "version": "1.0.0",
  "description": "spring-boot2 and vue",
  "main": "index.js",
  "scripts": {
    "build": "webpack",
    "dev": "webpack-dev-server --hot --open --contentBase src --port 8080"
  },
  "author": "David Lin",
  "license": "ISC",
  "dependencies": {
    "ant-design-vue": "^1.3.13",
    "axios": "^0.19.0",
    "vue": "^2.6.10",
    "vue-router": "^3.0.7",
    "vuex": "^3.1.1"
  },
  "devDependencies": {
    "babel-core": "^6.26.3",
    "babel-loader": "^7.1.5",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-preset-env": "^1.7.0",
    "babel-preset-stage-0": "^6.24.1",
    "css-loader": "^3.1.0",
    "file-loader": "^4.1.0",
    "html-webpack-plugin": "^3.2.0",
    "less": "^3.9.0",
    "less-loader": "^5.0.0",
    "style-loader": "^0.23.1",
    "url-loader": "^2.1.0",
    "vue-loader": "^15.7.1",
    "vue-template-compiler": "^2.6.10",
    "webpack": "^4.38.0",
    "webpack-cli": "^3.3.6",
    "webpack-dev-server": "^3.7.2"
  }
}

新建webpack.config.js 這個配置文件,內容如下

const path = require('path');
var htmlWebpackPlugin = require("html-webpack-plugin");
var VueLoaderPlugin = require("vue-loader/lib/plugin");

module.exports = {
    entry: './src/main.js',
    output: {
        path: path.resolve(__dirname, './dist'),
        filename: 'bundle.js'
    },
    plugins: [
        new htmlWebpackPlugin({
            template: path.resolve(__dirname, 'src/index.html'),//模板路徑
            filename: 'index.html'
        }),
        new VueLoaderPlugin()
    ],
    module: {
        rules: [
            {test: /\.css$/, use: ['style-loader', 'css-loader']},
            {test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader']},
            {test: /\.js$/, use: 'babel-loader', exclude: /node_modules/},
            {
                test: /\.(jpg|png|jpeg|gif|bmp)$/,
                use: 'url-loader?limit=44706&name=[hash:8]-[name].[ext]'
            },
            {test: /\.(ttf|eot|svg|woff|woff2)$/, use: 'url-loader'}, // 處理 字體文件的 loader
            {test: /\.vue$/, use: 'vue-loader'}
        ]
    }
};

新建babel配置問文件:.babelrc 內容如下

{
  "presets": ["env", "stage-0"],
  "plugins": ["transform-runtime"]
}

五:簡單運行

1.編寫App.vue

<template>
    <div>
         <h1>{{msg}}</h1>
    </div>
</template>

<script>
    export default {
        name:'App',
        data(){
            return {
                msg:'Hello World !'
            }
        }
    }
</script>

<style scoped>

</style>

2.編寫main.js入口文件如下

//main.js 是項目的JS入口文件
import Vue from 'vue'
import App from './App.vue'
import Antd from 'ant-design-vue'
import Vuex from 'vuex'

import 'ant-design-vue/dist/antd.css'

Vue.config.productionTip = false

Vue.use(Antd);
Vue.use(Vuex);


var app = new Vue({
    el:'#app',
    render: h => h(App)
});

3.編寫index.html如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>fire-admin</title>
</head>
<body>
<div id="app">

</div>
</body>
</html>

4.執行 npm  run  dev

5.IDEA完整結構如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章