vuejs实现ready函数加载完之后执行某个函数的方法
vue.js 教程
创新互联成立于2013年,是专业互联网技术服务公司,拥有项目成都网站制作、成都网站设计、外贸营销网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元盖州做网站,已为上家服务,为盖州各地企业和个人服务,联系电话:18982081108
Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架。
Vue 只关注视图层, 采用自底向上增量开发的设计。
Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
我期望vue中tds全都渲染在界面上之后,再调用一个函数(其实这个函数主要作用是给表格中的选择框加监听,如果tds没有渲染,那监听也加不上去)。
日期 任务 是否执行 执行结果 影响行数 执行时间 执行时长 成功率 操作 {{td.date}} {{td.job}} {{td.is_done==0?'未执行':'已执行'}} {{td.is_success==0?'成功':(td.is_success==1?'失败':'')}} {{td.nums}} {{td.begintime}} {{td.usedtime}} {{td.rate}}
尝试了
Vue.nextTick(function () { alert('new message'); // true })
无效,在tds未展示在界面上时就alert了。
尝试了
vm.$nextTick(function () { alert('new message'); // true })
也无效,在tds未展示在界面上时就alert了。
最后解决办法是增加一个vm.$watch('tds',function(val){ })
函数,在vm改变后调用nextTick,最终可以在tds展示在界面之后调用我想要的函数。
var vm = new Vue({ el: '#app', ready: function () { $.getJSON("/main/getMonitor", {"beginDate": getTheDate(-2), "endDate": getTheDate(0)}, function (result) { vm.$set('tds', result); }); }, data: { start: getTheDate(-2), end: getTheDate(0), isupdate: 0 }, // computed: { // // 一个计算属性的 getter // tds: function () { // var myr=""; // $.getJSON("/main/getMonitor", {"beginDate": getTheDate(-2),"endDate": getTheDate(0)}, function (result) { // myr= result; // }); // return myr; // } // }, methods: { rerun: function (index, monitor_id) { var button = $('#trs').children().eq(index).children().eq(9).children().eq(0); button.prop('disabled', true); button.html('重跑中'); // $.getJSON("http://m.o2.qq.com/Api/rerunMonitor", {"monitorID": monitor_id}, function (result) { // console.log(result); // vm.isupdate=(this.isupdate==0?1:0); // button.html('重跑'); // button.prop('disabled', false); // }); $.ajax({ url: "http://m.o2.qq.com/Api/rerunMonitor", // The name of the callback parameter, as specified by the YQL service jsonp: "callback", // Tell jQuery we're expecting JSONP dataType: "jsonp", // Tell YQL what we want and that we want JSON data: { monitorID: monitor_id }, // Work with the response success: function (response) { console.log(response); // server response vm.isupdate = (vm.isupdate == 0 ? 1 : 0); button.html('重跑'); button.prop('disabled', false); } }); } } }) vm.$watch('start', function (val) { $.getJSON("/main/getMonitor", {"beginDate": val, "endDate": this.end}, function (result) { vm.tds = result; }); }) vm.$watch('end', function (val) { $.getJSON("/main/getMonitor", {"beginDate": this.start, "endDate": val}, function (result) { vm.tds = result; }); }) vm.$watch('isupdate', function (val) { $.getJSON("/main/getMonitor", {"beginDate": this.start, "endDate": this.end}, function (result) { vm.tds = result; }); }) vm.$watch('tds',function(val){ vm.$nextTick(function() { initTableCheckbox(); }); })
总结
以上所述是小编给大家介绍的vuejs实现ready函数加载完之后执行某个函数的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!
本文标题:vuejs实现ready函数加载完之后执行某个函数的方法
URL链接:http://ybzwz.com/article/ggddjh.html