vuejs实现ready函数加载完之后执行某个函数的方法
作者:huanghanqian 发布时间:2024-05-29 22:48:43
标签:vuejs,ready,加载
vue.js 教程
Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架。
Vue 只关注视图层, 采用自底向上增量开发的设计。
Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
我期望vue中tds全都渲染在界面上之后,再调用一个函数(其实这个函数主要作用是给表格中的选择框加监听,如果tds没有渲染,那监听也加不上去)。
<div class="row" id="app">
<div class="col-sm-12 col-md-12 main">
<table class="table table-bordered table-striped">
<thead>
<tr>
<th><input type="checkbox" id="checkAll" name="checkAll" /></th>
<th>日期</th>
<th>任务</th>
<th>是否执行</th>
<th>执行结果</th>
<th>影响行数</th>
<th>执行时间</th>
<th>执行时长</th>
<th>成功率</th>
<th>操作</th>
</tr>
</thead>
<tbody id="trs">
<tr v-for="td in tds">
<td><input type="checkbox" name="checkItem" /></td>
<td>{{td.date}}</td>
<td>{{td.job}}</td>
<td>{{td.is_done==0?'未执行':'已执行'}}</td>
<td>{{td.is_success==0?'成功':(td.is_success==1?'失败':'')}}</td>
<td>{{td.nums}}</td>
<td>{{td.begintime}}</td>
<td>{{td.usedtime}}</td>
<td>{{td.rate}}</td>
<td v-if="td.is_done==0">
</td>
<td v-if="td.is_done==1">
<button v-on:click="rerun($index,td.monitor_id)" type="button" class="btn btn-default btn-xs"
style="padding:1px 10px;margin-top:-3px;margin-bottom:-2px;">重跑
</button>
</td>
</tr>
</tbody>
</table>
</div>
<!--/.main -->
</div>
尝试了
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('重跑中<span class="dotting"></span>');
// $.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函数加载完之后执行某个函数的方法网站的支持!
来源:https://blog.csdn.net/huanghanqian/article/details/52937483
0
投稿
猜你喜欢
- 前言要将图片转换为字符图其实很简单,我们首先将图片转换为灰度图像,这样图片的每个像素点的颜色值都是0到255,然后我们选用一些在文字矩形框内
- 前言相信各位一定有收到过这样的群发短信,据说还被归类为玩转微信的五大技巧之一╮(╯▽╰)╭但,其实,只要跑一下脚本,就轻松找出删除自己的好友
- 把程序放到一个文件中,然后包含再call就可以了。(JMAIL4.3)<%'警告函数sub w_msg(messag
- 前言之前的文章编写了一个返回json的例子,直接用浏览器进行get请求虽然成功了, 但是接口文档的样式很难看, 不好用. 而且提示没有访问权
- 本文是小编日常收集整理些js经典实例,特此分享供大家参考!跨浏览器添加事件//跨浏览器添加事件function addEvent(obj,t
- 一、实验目的(1)熟练使用Counter类进行统计(2)掌握pandas中的cut方法进行分类(3)掌握matplotlib第三方库,能熟练
- 网上有许关于固定表格的标题行的文章,但是既要固定标题行又要固定标题列的却几乎没有。现我写下如下代码以供大家参考:<html> &
- set global log_bin_trust_function_creators = 1; DROP FUNCTION IF EXIST
- 安装依赖主要这边还需要安装两个依赖,gorm、viper ,具体的可以访问他们的官网(Gorm官网地址 Viper Github地址)初始化
- list.asp<%@LANGUAGE="VBSCRIPT" CODEPAGE="936&qu
- 深度学习中,模型训练一般都需要很长的时间,由于很多原因,导致模型中断训练,下面介绍继续断点训练的方法。方法一:载入模型时,不必指定迭代次数,
- 前言elasticsearch-dsl是基于elasticsearch-py封装实现的,提供了更简便的操作elasticsearch的方法。
- 1 前言上篇文章Python爬虫获取基金列表我们已经讲述了如何从基金网站上获取基金的列表信息。这一骗我们延续上一篇,继续分享如何抓取基金的基
- 使用索引时数据库性能优化的必备技能之一。在MySql数据库中,有四种索引:聚焦索引(主键索引)、普通索引、唯一索引以及我们这里将要介绍的全文
- 容器与可迭代对象在正式开始前先补充一些基本概念在 Python 中存在容器 与 可迭代对象容器:用来存储多个元素的数据结构,例如 列表,元组
- 本文主要讲解的是表单,这个其实对于做过网站的人来说,并不陌生,而且可以说是最为常用的提交数据的Form表单。本文主要来讲解一下内容:1.基本
- 前言在Django中有大量的通用类视图,例如ListView,DetailView,CreateView,UpdateView等等,将所有重
- 1.执行时间 window.onl
- 一、基本概念(查询语句)①基本语句1、“select * from 表名;”,—
- php实现记住密码自动登录方法不止一个,下面出现有二个emptyempty,其实是一个,那是因为代码高亮有bug。希望对大家有帮助。 一,用