Vue.js是我的最爱,知乎也是我的最爱。我用vue做了一个知乎日报项目地址:Github地址在线预览demo设计:1.设计没有遵循知乎客户端的交互和UI设计。我自己做了一个。颜色以黑、白、灰为主。本来想加入知乎的蓝色,但是我的设计功底太差,所以放弃了蓝色,只用了黑白灰。2、日常入口采用无边框设计,只增加一条浅灰色的分割线来区分。3.整个网页是一个单页面应用(SinglePageWebApp),所有数据由vuex管理,在store统一管理。预览:涉及技术:项目使用vue-cli搭建打包,配合vue全家桶(vue、vuex、vue-router)进行基础样式的编码和开发。Basscss用于设计级联样式表。Basscss简洁高效,复用性强网络请求使用axios后台,使用Node.jsvuex架构:为getters、mutations、actions变量名设置命名空间,否则store会写的太大,命名肯定会乱。示例://actionstypesexportconstFECTH_NEWS_LATEST='FECTH_NEWS_LATEST'//最新消息列表//muttionstypesexportconstTOGGLE_NEWS_LATEST='TOGGLE_NEWS_LATEST'//getterstypesexportconstDONE_NEWS_LIST_ROOT='DONE_NEWS_LIST_ROOT'//有意义写最新消息榜单梗点名评论。其实也没有必要把store分成modules,但是为了后续的开发还是分一下吧。使用getter将状态(state)和数据(data)发送到页面模板(template)。发送数据有两种或三种方式。按照自己的习惯来。我这样做:[types.DONE_NEWS_LIST_ROOT]:state=>{returnstate.NewsListRoot}computed:{...mapGetters(['DONE_NEWS_LATEST','DONE_LOADING_ONE','DONE_LOADING_TWO','DONE_NEWS_LIST_ROOT'])}
