最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VUE使用vuex解決模塊間傳值問題的方法

 更新時間:2017年06月01日 16:05:28   作者:Fayin  
本篇文章主要介紹了VUE使用vuex解決模塊間傳值問題 ,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

在看電影、打Dota、擼代碼間來回,猶豫不決,終于還是下決心繼續(xù)學習VUE。

仿照 conde.js 官網寫的一個demo,目前已經基本可用,但始終缺少登錄頁,沒有用戶權限管理,于是開擼......

<template>
 <div id="login">
 <c-header></c-header>
 <c-form></c-form>
 <p class="content-block"><a href="javascript:;" rel="external nofollow" rel="external nofollow" @click=showState class="button button-fill button-success">登錄</a></p>
 </div>
</template>

外觀大概是這樣的:

兩個輸入項通過 c-form 組件導入

由于沒有登錄接口調用,初步想法是:點擊登錄,將c-from組件輸入的值(用戶名和密碼)保存在 sessionStorage 中,通過判斷 sessionStorage 是否保存了用戶信息,來決定用戶的操作權限。

現在問題來了——點擊登錄,如何取得 c-form 組件中的輸入值?

最直接的想法就是通過子組件派生事件,父組件監(jiān)聽觸發(fā)。轉念一想,何不使用vuex來進行管理呢?正好之前從來沒有認真對待過它。

LOL......

坑坑坑,我踩踩踩

終于,總結出使用 vuex 的三大步驟:

步驟1:安裝和創(chuàng)建

安裝 vuex:npm i vuex --save

創(chuàng)建 store.js,把基本格式寫好:

 import Vue from 'vue'
 import Vuex from 'vuex'
 // 首先聲明一個狀態(tài) state
 const state = {
 msg: ''
 }
 // 然后給 actions 注冊一個事件處理函數,當這個函數被觸發(fā)時,將狀態(tài)提交到 mutaions中處理
 const actions = {
 saveName({commit}, msg) {
  commit('saveMsg', msg) // 提交到mutations中處理 
 }
 }
 // 更新狀態(tài)
 const mutations = {
  saveMsg(state, msg) {
  state.msg = msg;
 }
 }
 // 獲取狀態(tài)信息
 const getter = {
 showState(state) {
  console.log(state.msg)
 }
 }


 // 下面這個相當關鍵了,所有模塊,記住是所有,注冊才能使用
 export default new Vuex.Store{
 state,
 getter,
 mutations,
 actions
 }

步驟2:在子組件中使用(保存輸入)

具體到我這里,是在c-form中使用它:

<template>
 <div>
  <input type="text" @blur=saveName(username) v-model="username" placeholder="Your name">
 </div>
</template>

<script type="text/javascript">
 // 引入mapActions,很重要
 import { mapActions } from 'vuex'
 export default {
 data() {
  return {
  username:'',
  password: ''
  }
 },
 methods: {
  ...mapActions({
  // 在input 的blur 事件中觸發(fā)回調,并將輸入值作為參數返回到store中
  saveName: 'saveName' 
  })
 }
 }
</script>

步驟3:獲取在步驟2 中的輸入值(獲取state)

<template>
 <div id="login">
 <c-header></c-header>
 <c-form></c-form>
 <p class="content-block"><a href="javascript:;" rel="external nofollow" rel="external nofollow" @click=showState class="button button-fill button-success">登錄</a></p>
 </div>
</template>

<script>
// 引入mapGtters,很重要
import { mapGetters } from 'vuex'
 export default {
 methods: {
  ...mapGetters([
  // 在store.js 中注冊的getters
  'showState'
  ])
 },
 components: {
  "c-form": require('../components/form.vue'),
  "c-header": require('../components/header.vue')
 }
 }
</script>

至此,我們就能得到輸入值了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解Vue返回值動態(tài)生成表單及提交數據的辦法

    詳解Vue返回值動態(tài)生成表單及提交數據的辦法

    這篇文章主要為大家介紹了Vue返回值動態(tài)生成表單及提交數據,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Vue3的動態(tài)組件使用場景與示例

    Vue3的動態(tài)組件使用場景與示例

    在 Vue 中,組件是構建用戶界面的基礎,而動態(tài)組件的引入,更是讓開發(fā)者能夠在應用中實現靈活、可重用的視圖邏輯,本文將探討 Vue 3 中的動態(tài)組件,分享其使用場景,并通過示例代碼來說明其操作方法,需要的朋友可以參考下
    2025-01-01
  • Vue3數據更新,頁面沒有同步更新的問題及解決

    Vue3數據更新,頁面沒有同步更新的問題及解決

    這篇文章主要介紹了Vue3數據更新,頁面沒有同步更新的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 詳解Vue 全局變量,局部變量

    詳解Vue 全局變量,局部變量

    這篇文章主要介紹了Vue全局變量局部變量,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • vue2.0實現選項卡導航效果

    vue2.0實現選項卡導航效果

    這篇文章主要為大家詳細介紹了vue2.0實現選項卡導航效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Vue2.x中的Render函數詳解

    Vue2.x中的Render函數詳解

    通常開發(fā)vue我們使用的是模板語法,其實還有和react相同的語法,那就是render函數,同樣支持jsx語法。Vue 的模板實際是編譯成了 render 函數。
    2017-05-05
  • vue-quill-editor富文本編輯器超詳細入門使用步驟

    vue-quill-editor富文本編輯器超詳細入門使用步驟

    vue中很多項目都需要用到富文本編輯器,在使用了ueditor和tinymce后,發(fā)現并不理想,所以果斷使用vue-quill-editor來實現,下面這篇文章主要給大家介紹了關于vue-quill-editor富文本編輯器入門使用步驟的相關資料,需要的朋友可以參考下
    2022-08-08
  • Vue項目如何保持用戶登錄狀態(tài)(localStorage+vuex刷新頁面后狀態(tài)依然保持)

    Vue項目如何保持用戶登錄狀態(tài)(localStorage+vuex刷新頁面后狀態(tài)依然保持)

    關于vue登錄注冊,并保持登錄狀態(tài),是vue玩家必經之路,這篇文章主要給大家介紹了關于Vue項目如何保持用戶登錄狀態(tài)的相關資料,localStorage+vuex刷新頁面后狀態(tài)依然保持,需要的朋友可以參考下
    2022-05-05
  • vue基礎之v-bind屬性、class和style用法分析

    vue基礎之v-bind屬性、class和style用法分析

    這篇文章主要介紹了vue基礎之v-bind屬性、class和style用法,結合實例形式分析了vue.js中v-bind綁定及class、style樣式控制相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • vue3+vite實現在線預覽pdf功能

    vue3+vite實現在線預覽pdf功能

    這篇文章主要為大家詳細介紹了如何通過vue3和vite實現在線預覽pdf功能,文中的示例代碼簡潔易懂,具有一定的借鑒價值,感興趣的小伙伴可以學習一下
    2023-10-10

最新評論

囊谦县| 青神县| 治多县| 灵丘县| 武平县| 柳林县| 太保市| 兴仁县| 呼和浩特市| 二手房| 盈江县| 苍山县| 上犹县| 宁晋县| 哈尔滨市| 奉贤区| 嵩明县| 象州县| 吐鲁番市| 布拖县| 琼中| 舒兰市| 靖安县| 奈曼旗| 德惠市| 彭水| 鄂尔多斯市| 奉节县| 区。| 游戏| 通州市| 江西省| 金沙县| 鄂托克旗| 辽中县| 柳河县| 徐水县| 大同县| 格尔木市| 文昌市| 修水县|