使用vue做的一个查询页面,在页面打开时想让它传一些默认的参数到后台进行查询,例如传最近七天的日期格式。发现在打开页面的时候并未按预想的传值过去。经过数次尝试,终于发现了问题所在。

原来对vue的生命周期使用有误,原始的写法如下:

data:{
      label: "",
      value1: "",
      account: 0,
      checkDate: {
        time_arr: [],
        begintime: "",
        endtime: ""
    }
  },
  watch: {
  },
  created: function() {
    this.search();
  },
  methods: {
   search:function(){

  }
 },
  mounted() {
    this.getData();
  }

search方法负责请求数据,之前是写在了created里,这个显然是不行的,created代表了vue的实体被创建好,此时并没有和界面绑定好,当然取不到值了。解决办法是把这个search放到mounted里,这就代表等界面上值绑定好再触发。

链接