參考鏈結2
參考鏈結3
先看一下我的目錄結構:
1.main.js 入口 載入元件 初始化等
import vue from
'vue'
import store from
'../store/index'
vue.config.productiontip =
false
newvue
()
2.store.js—index.js 總檔案
import vue from
"vue"
;import vuex from
"vuex"
;import state from
'./state'
;import getters from
'./getters'
;import mutations from
'./mutations'
;import actions from
'./actions'
vue.
use(vuex)
;export
default
newvuex.store
()
3.store.js—state.js 狀態資料儲存
const state =,,
,], shoplist:[,
,,]}
export
default state
4.store.js—mutations.js (改變state.js裡的值,順便利用localstorage儲存本地值,使得重新整理瀏覽器後資料不會消失)
const mutations =
);// }
reduceprice:(
state, payload
)=>);
localstorage.
setitem
('ceshi'
,json
.stringify
(state.productlist)
)return state.productlist
}}export
default mutations
5.store.js—actions.js
const actions =
,2000);
}// 也可以這麼寫 實際開發專案中我多數是這麼寫的
// reducepriceasync: ( , payload) => , 2000);
// }
}export
default actions
6.store.js—getters.js(使用getters來獲取我們的state,因為它算是state的乙個計算屬性)
const getters =
,getshoplist
:state
=>
,getsaledprice
:state
=>;}
);return saleproduct;}}
export
default getters
最後貼上兩個元件的**:
listone
="list-one"
>
/h1>
for=
"(product, index) in getsaledprice"
:key=
"index"
>
名稱:}
<
/p>
**:}
<
/p>
<
/li>
<
/ul>
"reduceprice(4)"
>降價<
/button>
"reducepriceasync(4)"
>非同步降價<
/button>
<
/div>
<
/template>
import
from
"vuex"
;export
default
// },
computed:
, methods:
,// reducepriceasync()
// this.$store.commit(mutationname)是用來觸發乙個mutation的方法
// this.$store.dispath(actionname)是用來觸發乙個actionname的方法
...mapmutations([
"reduceprice"])
,...
mapactions([
"reducepriceasync"])
},mounted()
};<
/script>
<
!-- add "scoped" attribute to limit css to this component only --
>
h1,h2
.list-one
ul li
button
<
/style>listtwo
="list-two"
>
/h1>
for=
"(product, index) in getproductlist"
:key=index>
名稱:}
<
/p>
**:}
<
/p>
<
/li>
<
/ul>
<
/div>
<
/template>
import
from
'vuex'
export
default
}<
/script>
<
!-- add "scoped" attribute to limit css to this component only --
>
h1, h2
.list-two
ul li
<
/style>關於localstorage的使用請見:
用script儲存讀取localStorage
要求有一定script基礎 儲存讀取localstorage 讀取input標籤 獲取input name nickname 傳過來的值,返回的是列表取第乙個 var element document.getelementsbyname nickname 0 取nickname的值 var nick...
cookie與本地儲存localStorage
cookie預設是臨時儲存的,當瀏覽器關閉時,自動銷毀。如果想長時間存放乙個cookie,同時需要設定乙個過期時間。localstorage.keyname value localstorage keyname value 注 localstorage是長期資料儲存,sessionstorage臨時...
jquery 的本地儲存 localStorage
前面寫了jquery 本地儲存 cookie 的基本用法 jquery cookie示例 只提示一次的彈框 兩篇介紹cookie用法的篇章之後,下面來看看 localstorage 這個本地儲存的方式。2 localstorage 儲存在本地,容量為5m或者更大,不會在請求時候攜帶傳遞,在所有同源視...