1. 程式人生 > >《Vue全家桶+SSR+Koa2全棧開發美團網》學習筆記

《Vue全家桶+SSR+Koa2全棧開發美團網》學習筆記

基礎 美團 創建 開發 stat emit out fun vue

一、

1.vue 3版本的安裝

npm install -g @vue/cli

2.查看版本號

vue -V

3. 創建項目

vue create vue-learn

cd vue-learn

npm run serve

4.創建文件

cd vue-learn/

touch src/components/n.js

import Vue form ‘vue‘

Vue.directive(‘n‘,{

  bind:function( el,binding ){

    el.textContent = Math.pow( binding.vue,2 )

  },

  update:function( el,binding ){

    el.textContent = Math.pow( binding.vue,2 )

  }

})

5.計算屬性

6.條件&列表渲染

7.事件處理

二、組件

1.子組件 $emit(‘patch‘,34)

2.父組件監聽 @patch

npm install vue-router

import Vue form ‘vue‘

import VueRouter from ‘vue-router‘

Vue.use(VueRouter)

cd src/

mkdir pages

touch pages/a.vue

touch pages/b.vue

const routes = [

  {

    path:‘pagea,

    component:pageA

  }

]

const router = new VueRouter({

  routes

})

export default router

import router form ‘./router‘

在項目主目錄下建立vue.config.js文件,裏面內容如下:

module.exports = {

  runtimeCompiler:true

}

三、vuex基礎

import Vue from ‘vue‘

import Vuex from ‘vuex‘

Vue.use(Vuex)

const state = {

  count:1

}

const mutations = {

  increment(state){

    state.count++

  },

  decrement(state){

    state.count--

  }

}

const actions = {

  increment:({commit})=>{

    commit(‘increment‘)

  },

  decrement:({commit})=>{

    commit(‘decrement‘)

  }

}

export default new Vuex.Store({state,mutations,actions})

在main.js中添加以下代碼

import store from ‘./store‘

new Vue({

  render : h => h(App)

  store

}).$mount(‘#app‘)

在組件中使用

{{$store.state.count}}

import { mapAction } from ‘vuex‘

export default {

  methods:mapAction([

    ‘increment‘,

    ‘decrement‘

  ])

}

《Vue全家桶+SSR+Koa2全棧開發美團網》學習筆記