vue-cli(vue腳手架) 簡單使用

1.vue-cli 做用html

       vue-cli做爲vue的腳手架,能夠幫助咱們在實際開發中自動生成vue.js的模板工程。vue

2.vue-cli 使用webpack

     a. 安裝全局vue-clinginx

 b.初始化,生成項目模板(my_project是項目名,本身隨意) npm install vue-cli -g

 vue init webpack my_project
   選項:
    • Project name (baoge): -----項目名稱,直接回車,按照括號中默認名字(注意這裏的名字不能有大寫字母,若是有會報錯Sorry, name can no longer contain capital letters)。
    • Project description (A Vue.js project): ----項目描述,也可直接點擊回車,使用默認名字
    • Author (): ----做者,輸入你的大名
      接下來會讓用戶選擇:
    • Runtime + Compiler: recommended for most users 運行加編譯,既然已經說了推薦,就選它了
      Runtime-only: about 6KB lighter min+gzip, but templates (or any Vue-specificHTML) are ONLY allowed in .vue files - render functions are required elsewhere 僅運行時,已經有推薦了就選擇第一個了
    • Install vue-router? (Y/n) 是否安裝vue-router,這是官方的路由,大多數狀況下都使用,這裏就輸入「y」後回車便可。
    • Use ESLint to lint your code? (Y/n) 是否使用ESLint管理代碼,ESLint是個代碼風格管理工具,是用來統一代碼風格的,通常項目中都會使用。
      接下來也是選擇題Pick an ESLint preset (Use arrow keys) 選擇一個ESLint預設,編寫vue項目時的代碼風格,直接y回車
    • Setup unit tests with Karma + Mocha? (Y/n) 是否安裝單元測試,我選擇安裝y回車
    • Setup e2e tests with Nightwatch(Y/n)? 是否安裝e2e測試 ,我選擇安裝y回車
 c.進入生成的項目文件夾

 d.初始化,安裝依賴 cd my_project

npm install
 e.運行
npm run dev
 
項目目錄:

 

1.index.html ---首頁入口文件web

(其中 id 爲 app 的 div 是頁面容器,其中的 router-view 會由 vue-router 去渲染組件,講結果掛載到這個 div 上。)vue-router

<!doctype html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>Vue Router Demo</title>
 </head>
 <body>
    <div id="app">
       <router-view></router-view>
     </div>
     <script src="dist/bundle.js"></script>
 </body>
 </html>  

2.main.js ----核心文件vue-cli

此處的 el:'#app', 表示的是index中的那個 <div id="app"></div>, 它要被 App這個組件 components: { App } 的模板 template: '<App/>'替換。docker

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'

Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  template: '<App/>',
  components: { App }
})

3.App.vue ----項目入口文件npm

App這個組件 components: { App } 的模板 template: '<App/>' 的具體內容。其中的 router-view 會由 vue-router 去渲染組件,講結果掛載到這個 div 上api

<template>
  <div id="app">
    <img src="./assets/logo.png">
    <router-view></router-view>
  </div>
</template>

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

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

4.router/index.js -----路由與組件
import Vue from 'vue'
import Router from 'vue-router'
import Hello from '@/components/Hello'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'Hello',
      component: Hello
    }
  ]
})
相關文章
相關標籤/搜索