forked frombailicangdu/vue2-happyfri
- Notifications
You must be signed in to change notification settings - Fork0
vue2 + vue-router + vuex 入门项目
NotificationsYou must be signed in to change notification settings
ShaneLC/vue2-happyfri
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
非常简单的一个vue2 + vuex的项目,整个流程一目了然,麻雀虽小,五脏俱全,适合作为入门练习。
vuex的存在对于vue来说简直如同灵魂一般,让vue在组件之间的通信非常方便。
如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢! ^_^
或者您可以 "follow" 一下,我会不断开源更多的有趣的项目
如有问题请直接在 Issues 中提,或者您发现问题并有非常好的解决方案,欢迎 PR 👍
开发环境 macOS 10.12.3 Chrome 56 nodejs 6.10.0
这个项目主要用于 vue2 + vuex 的入门练习,另外推荐一个 vue2 比较复杂的大型项目,覆盖了vuejs大部分的知识点。目前项目已经完成。地址在这里
# 安装依赖npm install# 开启本地服务器localhost:8088npm run dev# 发布环境npm run build
demo地址(请用chrome手机模式预览)
importAppfrom'../App'exportdefault[{path:'/',component:App,children:[{path:'',component:r=>require.ensure([],()=>r(require('../page/home')),'home')},{path:'/item',component:r=>require.ensure([],()=>r(require('../page/item')),'item')},{path:'/score',component:r=>require.ensure([],()=>r(require('../page/score')),'score')}]}]
importajaxfrom'../config/ajax'exportdefault{addNum({ commit, state},id){commit('REMBER_ANSWER',{ id})if(state.itemNum<state.itemDetail.length){commit('ADD_ITEMNUM',{num:1})}},getData({ commit, state}){ajax('GET','http://operating-activities.putao.com/happyfriday?active_topic_id=4').then(res=>{commit('GET_DATA',{res})})},initializeData({ commit}){commit('INITIALIZE_DATA')}}
constGET_DATA='GET_DATA'constADD_ITEMNUM='ADD_ITEMNUM'constREMBER_ANSWER='REMBER_ANSWER'constREMBER_TIME='REMBER_TIME'constINITIALIZE_DATA='INITIALIZE_DATA'constGET_USER_INFORM='GET_USER_INFORM'exportdefault{[GET_DATA](state,payload){if(payload.res.httpStatusCode==200){state.itemDetail=payload.res.topiclist;}},[GET_USER_INFORM](state,payload){state.user_id=payload.res.users_id;},[ADD_ITEMNUM](state,payload){state.itemNum+=payload.num;},[REMBER_ANSWER](state,payload){state.answerid[state.itemNum]=payload.id;},[REMBER_TIME](state){state.timer=setInterval(()=>{state.allTime++;},1000)},[INITIALIZE_DATA](state){state.itemNum=1;state.allTime=0;},}
importVuefrom'vue'importVuexfrom'vuex'importmutationsfrom'./mutations'importactionsfrom'./action'Vue.use(Vuex)conststate={level:'第一周',itemNum:1,allTime:0,timer:'',itemDetail:[],answerid:{}}exportdefaultnewVuex.Store({state,actions,mutations})
importVuefrom'vue'importVueRouterfrom'vue-router'importroutesfrom'./router/router'importstorefrom'./store/'Vue.use(VueRouter)constrouter=newVueRouter({routes})newVue({router,store,}).$mount('#app')
About
vue2 + vue-router + vuex 入门项目
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Languages
- JavaScript61.0%
- Vue30.8%
- HTML5.2%
- CSS3.0%