vuejs實現(xiàn)ready函數(shù)加載完之后執(zhí)行某個函數(shù)的方法
vue.js 教程
Vue.js(讀音 /vjuː/, 類似于 view) 是一套構建用戶界面的漸進式框架。
Vue 只關注視圖層, 采用自底向上增量開發(fā)的設計。
Vue 的目標是通過盡可能簡單的 API 實現(xiàn)響應的數(shù)據(jù)綁定和組合的視圖組件。
我期望vue中tds全都渲染在界面上之后,再調(diào)用一個函數(shù)(其實這個函數(shù)主要作用是給表格中的選擇框加監(jiān)聽,如果tds沒有渲染,那監(jiān)聽也加不上去)。
<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>是否執(zhí)行</th> <th>執(zhí)行結果</th> <th>影響行數(shù)</th> <th>執(zhí)行時間</th> <th>執(zhí)行時長</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?'未執(zhí)行':'已執(zhí)行'}}</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){ })
函數(shù),在vm改變后調(diào)用nextTick,最終可以在tds展示在界面之后調(diào)用我想要的函數(shù)。
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實現(xiàn)ready函數(shù)加載完之后執(zhí)行某個函數(shù)的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
Vue3數(shù)據(jù)更新,頁面沒有同步更新的問題及解決
這篇文章主要介紹了Vue3數(shù)據(jù)更新,頁面沒有同步更新的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03Vue2仿淘寶實現(xiàn)省市區(qū)三級聯(lián)動
這篇文章主要為大家詳細介紹了Vue2仿淘寶實現(xiàn)省市區(qū)三級聯(lián)動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11Vue 使用formData方式向后臺發(fā)送數(shù)據(jù)的實現(xiàn)
這篇文章主要介紹了Vue 使用formData方式向后臺發(fā)送數(shù)據(jù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04Vue3+vuedraggable實現(xiàn)動態(tài)配置頁面
這篇文章主要為大家詳細介紹了Vue3如何利用vuedraggable實現(xiàn)動態(tài)配置頁面,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以參考一下2023-12-12利用Vue+intro.js實現(xiàn)頁面新手引導流程功能
在同學們使用某些網(wǎng)站的新版本頁面的時候,經(jīng)常會出現(xiàn)一個類似于新手引導一樣的效果,來幫助同學們更好的熟悉新版本頁面的功能和使用,這篇文章主要給大家介紹了關于如何利用Vue+intro.js實現(xiàn)頁面新手引導流程功能的相關資料,需要的朋友可以參考下2023-11-11