最近兩年,同窗們出去討論前端的框架,相信你們對vue也並不陌生,vue、angular、React並稱前端三大框架!各有各的特點,在這裏說一下,咱們很是有必要學習這些東西,無論是求職面試,仍是公司須要!css
Vue.js(讀音 /vjuː/,相似於 view) 是一套構建用戶界面的漸進式框架。與其餘重量級框架不一樣的是,Vue 採用自底向上增量開發的設計。Vue 的核心庫只關注視圖層,它不只易於上手,還便於與第三方庫或既有項目整合。另外一方面,當與單文件組件和 Vue 生態系統支持的庫結合使用時,Vue 也徹底可以爲複雜的單頁應用程序提供驅動!html
首先建立一個HTML,咱們加入下邊兩行代碼前端
//引入vue <script src="https://unpkg.com/vue"></script> <div id="app"> {{ message }} </div> //掛載vue var app = new Vue({ el: '#app', data: { message: 'Hello Vue!' } })
最後瀏覽器會打印出Hello Vue!vue
今天教你們的不是這個,是怎樣使用vue-cli和如何依據cli,本身搭建咱們本身須要的項目node
npm install -g vue-cli
vue init webpack my-project
cd my-project
npm install
npm run dev
輸入npm run dev以後會進入一個歡迎頁面!webpack
只須要5步咱們的vue項目就構建完畢了,
你們看一下構建出來的項目結構!git
├── build // webpack/node配置文件 │ ├── 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 ├── config // 環境配置文件 │ ├── dev.env.js │ ├── index.js │ └── prod.env.js ├── node_modules // npm包文件 ├── src // 靜態資源文件 │ ├── assets │ │ └── logo.png │ ├── components │ │ └── Hello.vue │ ├── router │ │ └── index.js │ ├── App.vue │ └── main.js ├── static ├── .babelrc // babel配置文件 ├── .gitignore // gitignore忽略文件 ├── .editorconfig // 編碼風格配置文件 ├── .postcssrc.js // postcss配置文件 ├── package.json // node包管理文件 ├── index.html // 首頁模板 ├── package.json // 包管理文件 └── README.md // 描述文件
是否是特別的複雜,下邊咱們依據項目目錄搭建咱們須要的架構!web
咱們分析需求咱們須要這些東西面試
下邊咱們根據結構拆分爲下邊這樣,你們創建文件夾,一一創建vue-router
{ "name": "vue2", "version": "1.0.0", "description": "", "main": "webpack.config.js", "scripts": { "dev": "webpack-dev-server", "build": "rimraf dist && cross-env NODE_ENV=prod&&webpack -p --config ./webpack.config.js" }, "dependencies": {}, "keywords": [], "author": "", "license": "ISC", "devDependencies": { "babel-core": "^6.25.0", "babel-loader": "^7.1.1", "babel-preset-env": "^1.6.0", "extract-text-webpack-plugin": "^3.0.0", "html-webpack-plugin": "^2.29.0", "install": "^0.10.1", "npm": "^5.3.0", "vue": "^2.4.2", "webpack": "^3.4.1", "webpack-dev-server": "^2.6.1" } }
npm install
初始化咱們的項目,會給你安裝一個npm包!
module.exports = { ... module: { rules: [ { test: /\.vue$/, loader: 'vue-loader', }, { test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/ }, ] }, ... }
// entry.js import { app } from './app.js' app.$mount('#app')
// app.js import Vue from 'vue' import App from './App.vue' import router from './router' const app = new Vue({ router, ...App }) export { app, router }
咱們建立一個最簡單的index.vue項目,咱們以前已經建立好了
<template> <h1>hello world!</h1> </template> <script> //能夠寫vue語法 </script> <style> //能夠寫css </style>
同時咱們須要編寫最外層父組件App.vue,通常像下面這樣,主要嵌套一層router-view來動態展現不一樣路由下的內容:
<template> <router-view></router-view> </template> <script> </script> <style> </style>
import Vue from 'vue' // 引入vue import Router from 'vue-router' // 引入路由 Vue.use(Router) // 註冊路由 import Index from '../views/index.vue' // 引入咱們剛剛編寫的簡單的組件 export default new Router({ mode: 'hash', routes: [ { path: '/', name: 'index', component: Index, }, { path: '*', redirect: '/' }, ] })
npm install webpack-dev-server --save-dev
"scripts": { "dev": "webpack-dev-server", "build": "rimraf dist && cross-env NODE_ENV=prod&&webpack -p --config ./webpack.config.js" }
啓動webpack-dev-server,你會看到hello world!這幾個大字,這樣你們就能夠進行本身的項目編寫了!