2016-09-18 106 views
0

我只想問一下,如果在計算得到的getter中分配一些屬性,計算得到的getter中的排序

props: 
    invoice: 
    type: Object 

computed: 
    total: 
    @invoice.subtotal = { some expression } 

我想這樣做,是起因發票對象在一些其他組件共享,並且這些組件從小計組件需要計算數據。

+0

這表明'invoice.subtotal'本身應該是一個計算結果。 –

回答

0

理想情況下,您不應該在計算屬性內改變實例的狀態。

在你的情況,你應該看看Vuex這是基於Flux architecture共享狀態。在Vuex中,您可以擁有獲取者並分享多個組件之間的反應狀態...

+0

但getter只能以一種方式綁定數據(store> component)。在我的情況下,我需要保存要存儲的組件的計算值。例如,發票商店有產品數組和小計屬性,在小計組件中,我想收集所有產品,計算小計並將其保存在商店中。還有很多屬性,我必須爲每個字段編寫mutator嗎? –

+0

是的,爲了改變Vuex狀態,你將不得不通過存儲增變器來改變它......你如何編寫它們是你自己的決定。你可以爲幾個領域有一個增變器,這取決於你想要做什麼和實現什麼。 –

+0

我有很多計算屬性。這有點奇怪,我雖然可以將我的組件邏輯拆分爲兒童組件。但在一天結束時,似乎我必須定義大vuex.store對象。所以我沒有看到大vue組件和大vuex.store之間的區別。 :/ –