Vue.js入門手冊整理

[TOC]css

第一章、環境搭建

1.一、準備:

  • npm: 6.9.0 (npm > 3.0)html

  • node: v10.15.3 (node > 6.11.5)前端

  • vue: 2.0+vue

1.二、nodejs安裝

window系統能夠直接去官網下載:nodejs.org/en/node

1.三、npm安裝

查看npm版本webpack

npm -v
複製代碼

升級npmgit

cnpm install npm -g
複製代碼

升級或安裝cnpmgithub

npm install cnpm -g
複製代碼

國內直接使用 npm 的官方鏡像是很是慢的,這裏推薦使用淘寶 NPM 鏡像web

npm install cnpm -g --registry=https://registry.npm.taobao.org
複製代碼

1.四、vue安裝

安裝vue,-g 表示給他們安裝成全局可使用的包。vue-router

cnpm install vue vue-cli -g
複製代碼

運行vue

建立一個基於 webpack 模板的新項目my-project:

vue init webpack my-project
複製代碼

安裝依賴

cd my-project
cnpm install
複製代碼

以默認端口來運行:

npm run dev
複製代碼

安裝成功以後,訪問: http://localhost:8080

在這裏插入圖片描述

第二章、目錄結構

2.一、webpack

webpack簡介,webpack是一個前端資源加載/打包工具,將各類js/css/html代碼最後打包編譯到一塊兒。vuejs已經集成

2.二、webpack下的全局文件結構

目錄/文件 說明
build/ 編譯構建用到的腳本
config/ 各類配置文件
dist/ 打包後的文件夾
node_modules/ node的第三方包
src/ 源代碼
static/ 靜態資源文件
test/ 測試目錄
index.html 最外層文件
package.json node項目配置json
README.md markdown的說明文檔

build

build/
    build.js
    check-versions.js
    dev-client.js
    dev-server.js
    utils.js
    vue-loader.conf.js
    webpack.base.conf.js
    webpack.dev.conf.js
    webpack.prod.conf.js
複製代碼
  • build.js

打包構建使用,不能隨意修改

  • check-version.js

檢測npm的版本,不能隨意修改

  • dev-client.js和dev-server.js

服務器腳本,不能隨意修改(PS:藉助於nodejs,$npm run dev 就能夠打開一個server,運行vuejs)

  • units.js

css/sass 等文件的生成工具腳本,不能隨意修改

  • vue-loader.conf.js

用於輔助加載vuejs用到的css source map等內容

  • webpack.base.conf.js

一些基礎的配置文件,不能隨意修改

  • webpack.dev.conf.js

開發模式的基礎配置文件,不能隨意修改

  • webpack.prod.conf.js

生產模式的基礎配置文件,不能隨意修改

config

config/
    dev.env.js
    index.js
    prod.env.js
複製代碼
  • index.js

定義了 開發時的端口(默認是8080),定義了圖片文件夾(默認static), 定義了開發模式下的 代理服務器

  • dev.env.js

開發環境模式的配置文件

  • prod.env.js

生產環境模式的配置文件

dist

打包以後的文件所在目錄

node_modules node項目須要的第三方庫

src 源代碼的文件夾

▾ src/
  ▾ assets/
      logo.png
  ▾ components/
      HelloWorld.vue
  ▾ router/
      index.js
    App.vue
    main.js
複製代碼
  • assets: 存放圖片的文件夾
  • components: 用到的"視圖"和"組件"所在的文件夾。
  • router/index.js 路由文件。 定義了各個頁面對應的url.
  • App.vue 若是index.html 是一級頁面模板的話,這個App.vue就是二級頁面模板。 全部的其餘vuejs頁面,都做爲該模板的 一部分被渲染出來。
  • main.js 廢代碼。沒有實際意義,可是爲了支撐整個vuejs框架,存在很必要。

第三章、Vue調試

VueJs有提供調試Vue devtools工程,集成到Chrome插件

3.一、下載工程

git clone https://github.com/vuejs/vue-devtools
複製代碼

3.二、安裝cnpm支持

在vue-devtools文件夾安裝cnpm支持

cd vue-devtools //跳轉到vue-devtools文件夾
cnpm install //安裝cnpm環境支持,也能夠npm install
複製代碼

3.三、構建devtools

npm run build
複製代碼

編譯成功以後,就選擇chrome的添加拓展程序,選擇開發者模式,選擇vue-devtools\shells\chrome文件夾,就能夠將編譯好的chrome插件引到chrome裏

比較順利的是直接安裝就能夠按F12調試了,若是有遇到下列問題,能夠參考個人解決方法:

3.四、devtools經常使用問題

npm run build報錯 編譯devtools工程出現報錯:

...
 @ D:/VueJs/vue-devtools/src/devtools/components/StateInspector.vue
 @ D:/VueJs/vue-devtools/node_modules/_buble-loader@0.5.1@buble-loader??ref--0!D
:/VueJs/vue-devtools/node_modules/_vue-loader@15.7.0@vue-loader/lib??vue-loader-
options!D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexStateInspector.vue?vue
&type=script&lang=js&
 @ D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexStateInspector.vue?vue&type
=script&lang=js&
 @ D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexStateInspector.vue
 @ D:/VueJs/vue-devtools/node_modules/_buble-loader@0.5.1@buble-loader??ref--0!D
:/VueJs/vue-devtools/node_modules/_vue-loader@15.7.0@vue-loader/lib??vue-loader-
options!D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexTab.vue?vue&type=scrip
t&lang=js&
 @ D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexTab.vue?vue&type=script&lan
g=js&
 @ D:/VueJs/vue-devtools/src/devtools/views/vuex/VuexTab.vue
 @ D:/VueJs/vue-devtools/src/devtools/router.js
 @ D:/VueJs/vue-devtools/src/devtools/index.js
 @ ./src/devtools.js
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! vue-devtools@5.0.0-beta.4 build: `cd shells/chrome && cross-env NODE_EN
V=production webpack --progress --hide-modules`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the vue-devtools@5.0.0-beta.4 build script.
npm ERR! This is probably not a problem with npm. There is likely additional log
ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2019-03-17T1
4_26_16_300Z-debug.log
複製代碼

新代碼用的webpack4,node版本至少大於6.11.5,有遇到如上相似錯誤的,要檢查你安裝的nodejs版本,最新版的devtools要求node版本至少大於6.11.5,解決方法就是從新安裝nodejs

安裝以後vue圖標不顯示 修改配置,改成TRUE,使vue插件在chrome裏能夠看到

修改:vue-devtools\shells\chrome\manifest.json

在這裏插入圖片描述

若是devtools插件仍是不起效,能夠在vue-devtools\shells\chrome\webpack.config.js加上

if (process.env.NODE_ENV =='production') { module.exports.plugins = [ 'process.env':{ NODE_ENV:'"development"' } ] }

const path = require('path')
const createConfig = require('../createConfig')

module.exports = createConfig({
  entry: {
    hook: './src/hook.js',
    devtools: './src/devtools.js',
    background: './src/background.js',
    'devtools-background': './src/devtools-background.js',
    backend: './src/backend.js',
    proxy: './src/proxy.js',
    detector: './src/detector.js'
  },
  output: {
    path: path.join(__dirname, 'build'),
    filename: '[name].js'
  },
  devtool: process.env.NODE_ENV !== 'production'
    ? '#inline-source-map'
    : false
})
if (process.env.NODE_ENV =='production')
{
	module.exports.plugins = [
		'process.env':{
			NODE_ENV:'"development"'
		}	
	]
}	


複製代碼

上面問題解決了,就能夠按f12調試了

在這裏插入圖片描述

第四章、定義頁面

建立一個Vue頁面須要兩個步驟:

  • 建立頁面
  • 定義路由

4.一、建立頁面

建立一個TestVue.vue命名的頁面 components/TestVue.vue

<template>
  <div >
    Hi Vue!
  </div>
</template>

<script>
export default {
  data () {
    return { }
  }
}
</script>

<style>
</style>

複製代碼

4.二、定義路由

修改路由腳本,加上頁面路由信息 router/index.js

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'
import TestVue from '@/components/TestVue'

Vue.use(Router)
export const constantRouterMap = [{
  path: '/',
  name: 'HelloWorld',
  component: HelloWorld
}, {
  path: '/TestVue',
  name: 'TestVue',
  component: TestVue
}]
export default new Router({
  routes: constantRouterMap
})

複製代碼

訪問頁面 http://localhost:8080/#/TestVue

附錄資料

VueJS教程:

相關文章
相關標籤/搜索