Vuex利用state保存新闻数据实例


Posted in Javascript onJune 28, 2017

Vuex利用state保存新闻数据实例

回顾

以前我们在做这个新闻列表的时候,是一个写死的数据

export default{
    data(){
      return{
        newslist:[
          {newsid:"101",pubtime:"2016-10-29",title:"探索之路",desc:"是手机团队的探索之路"},
          {newsid:"102",pubtime:"2016-10-28",title:"系统之战",desc:"如何支持业务解决"},
          {newsid:"103",pubtime:"2016-10-27",title:"大文件存储",desc:"背后的你不得不知的技术"},
          {newsid:"104",pubtime:"2016-10-26",title:"飞天进化",desc:"阿里巴巴技术委员会"},
        ]
      }
    },
  }

然后在模板上循环:

<div class="page-header" v-for="news in newslist">

今天我们来学习从服务器获取数据

news-list.vue:

export default{
    created(){
      if (this.$store.state.newslist.length == 0){
        // 请求服务器获取数据
        this.$http.get("http://localhost/news.php").then(function (res) {
          this.$store.state.newslist = res.body;
        },function (res) {
          // 请求失败处理
        })
      }
    }
  }

组件生命周期(创建)里请求服务器获取数据,然后保存到了state 里:

this.$store.state.newslist = res.body;

newslist 在实例化Vuex.Store 的时候定义,入口文件index.js里:

state:{
    user_name:"",
    newslist:[]
  },

组件模板上就要这样循环了:

v-for="news in this.$store.state.newslist"

Vuex利用state保存新闻数据实例

数据过滤

处理服务器返回来的数据,比如我们这里news.PHP 的返回的json数据:

[{"id":101,"pubtime":"2016-10-29","title":"探索之路","desc":"是手机团队的探索之路","isdeleted":false},{"id":102,"pubtime":"2016-10-29","title":"排行榜","desc":"如何支持业务接入?选择什么存储引擎?","isdeleted":false},{"id":103,"pubtime":"2016-10-29","title":"大文件存储","desc":"讲大型二进制文件存储,只包含那些文件的轻量级引用","isdeleted":true}]

我们要根据isdeleted 做数据过滤,不多说,先看代码:

import Vuex from 'vuex';
Vue.use(Vuex);

const vuex_store = new Vuex.Store({
  state:{
    user_name:"",
    newslist:[]
  },
  mutations:{
    showUserName(state){
      alert(state.user_name);
    }
  },
  getters:{
    getNews(state){
      return state.newslist.filter(function (news) {
        return !news.isdeleted;
      })
    }
  }
})

getters 专门写了一个方法,做了数据过滤处理,保留isdeleted为false 的记录。

那么我们在组件模板上循环的时候也要修改一下了:

v-for="news in this.$store.getters.getNews"

Vuex利用state保存新闻数据实例  

过滤之后,只有2条数据了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于prototype的validation.js发布2.3.4新版本,让你彻底脱离表单验证的烦恼
Dec 06 Javascript
javascript 词法作用域和闭包分析说明
Aug 12 Javascript
一个分享按钮的插件使用介绍(可扩展,内附开发制作流程)
Sep 19 Javascript
javascript 图片裁剪技巧解读
Nov 15 Javascript
jQuery中:hidden选择器用法实例
Dec 30 Javascript
JQuery实现动态适时改变字体颜色的方法
Mar 10 Javascript
Javascript中arguments和arguments.callee的区别浅析
Apr 24 Javascript
浅谈JavaScript中小数和大整数的精度丢失
May 31 Javascript
JavaScript随机打乱数组顺序之随机洗牌算法
Aug 02 Javascript
vue父组件点击触发子组件事件的实例讲解
Feb 08 Javascript
node.js调用C++函数的方法示例
Sep 21 Javascript
Electron整合React使用搭建开发环境的步骤详解
Jun 07 Javascript
微信浏览器禁止页面下拉查看网址实例详解
Jun 28 #Javascript
基于EasyUI的基础之上实现树形功能菜单
Jun 28 #Javascript
webpack学习--webpack经典7分钟入门教程
Jun 28 #Javascript
BootStrap Table前台和后台分页对JSON格式的要求
Jun 28 #Javascript
vue2项目使用sass的示例代码
Jun 28 #Javascript
微信小程序之网络请求简单封装实例详解
Jun 28 #Javascript
详解webpack+angular2开发环境搭建
Jun 28 #Javascript
You might like
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
PHP记录搜索引擎蜘蛛访问网站足迹的方法
2015/04/15 PHP
php preg_match的匹配不同国家语言实例
2016/12/29 PHP
PHP基于简单递归函数求一个数阶乘的方法示例
2017/04/26 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
Laravel的Auth验证Token验证使用自定义Redis的例子
2019/09/30 PHP
常见效果实现之返回顶部(结合淡入、淡出、减速滚动)
2012/01/04 Javascript
javascript闭包的高级使用方法实例
2013/07/04 Javascript
js获取客户端外网ip的简单实例
2013/11/21 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
2016/08/01 Javascript
JS关闭窗口时产生的事件及用法示例
2016/08/20 Javascript
RequireJS简易绘图程序开发
2016/10/28 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
微信小程序开发之好友列表字母列表跳转对应位置
2017/09/26 Javascript
Python中优化NumPy包使用性能的教程
2015/04/23 Python
举例区分Python中的浅复制与深复制
2015/07/02 Python
Python中的anydbm模版和shelve模版使用指南
2015/07/09 Python
在Python的Django框架中为代码添加注释的方法
2015/07/16 Python
iPython pylab模式启动方式
2020/04/24 Python
浅谈keras中的后端backend及其相关函数(K.prod,K.cast)
2020/06/29 Python
Python下载的11种姿势(小结)
2020/11/18 Python
HTML4和HTML5之间除了相似以外的10个主要不同
2012/12/13 HTML / CSS
HTML5 Canvas自定义圆角矩形与虚线示例代码
2013/08/02 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
天猫精选:上天猫,就够了
2016/09/21 全球购物
斯福泰克软件测试面试题
2015/02/16 面试题
企业统计员岗位职责
2013/12/13 职场文书
函授毕业自我鉴定
2013/12/19 职场文书
应届毕业生个人求职自荐信
2014/01/06 职场文书
大学四年个人自我小结
2014/03/05 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
毕业论文致谢格式模板
2015/05/14 职场文书
结婚纪念日感言
2015/08/01 职场文书
Golang Gob编码(gob包的使用详解)
2021/05/07 Golang