亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vuex要寫一個能調用的公共方法應該寫在哪里?

vuex要寫一個能調用的公共方法應該寫在哪里?

喵喵時光機 2018-07-18 10:02:10
前提:1、方法內部需要使用到state的狀態數據2、該方法要多次調用或者循環調用3、這個方法肯定不能寫在action里面,它不修改state里的狀態,只是利用state數據和參數,做一些比較計算,并返回新結果我現在的做法是,在外部定義這個公共函數,然后每次都把state作為參數傳進去export function 函數名(state, 其他參數){     //實現 }這樣雖然能實現我的意圖,但是我總感覺不妥當呢?請問有沒有更好的做法。
查看完整描述

3 回答

?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

公共函數文件可以直接

import store from '@/store'export function func1() {  const state1 = store.state.module_name.state1  return state1
}


查看完整回答
反對 回復 2018-07-20
?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

感覺你這個需求寫在Getter里面比較合適

查看完整回答
反對 回復 2018-07-20
?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

你可以在main.js中注冊一個全局方法

Vue.prototype.someMethod = function(state){
    // do something...
}

然后在組件內調用

this.someMethod(state)

一般來說這種方式注冊的都是使用頻次很高的方法, 如處理后臺返回的結果的函數、自己寫的formatTime方法


查看完整回答
反對 回復 2018-07-20
  • 3 回答
  • 0 關注
  • 1750 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號