鍍金池/ 問答/HTML5  Java  HTML/ vue返回后重置頁面數據

vue返回后重置頁面數據

在列表頁使用vue傳值給詳情頁后,詳情頁中又增加了新的數據請求vue渲染,但是返回后打開另一個詳情頁vue數據還在,沒有重置,vm數據重置了,但是再次請求的item數據還在,依舊重復使用。

//窗口隱藏時,重置頁面數據
            mui.plusReady(function () {
                var self = plus.webview.currentWebview();
                self.addEventListener("hide",function (e) {
                    window.scrollTo(0, 0);
                    vm.resetData();                
                },false);
            });

這是頁面vm數據的重置代碼,怎么重置item數據呢?

    var news = new Vue({
                el: '#news',
                data: {
                    items: [], //列表信息流數據
                },
            function convert(items) {
                var newItems = [];
                items.forEach(function(item) {
                    newItems.push({
                        id:             item.id,    
                        useride:         item.useride,
                        fukanid:         item.fukanid,                        
                        pingtime:         item.pingime,    
                        avatars:        'http://werd.imwork.net:90/public/'+item.avatars,
                        time:             getDateDiff(item.pingtime),
                        usernames:        item.usernames,    
                        pingcongtent:    item.pingcongtent,
                    });
                
                });
                                
                return newItems;
                
            };

這是新的vue請求數據,請問怎么點擊返回后將item的數據也重置呢??

回答
編輯回答
遺莣

終于解決了,在返回邏輯中加入刷新數據頁面(window.location.reload();)即可:

            //重寫返回邏輯
            mui.back = function() {
                plus.webview.currentWebview().hide("auto", 300);
                window.location.reload();
            };
2017年4月30日 10:19
編輯回答
糖果果

這種沒有執(zhí)行的問題,應該給出完整的引用鏈.現在這個樣子,斷在任何地方都會導致沒有執(zhí)行.
去jsfiddle寫個完整點的例子吧

2017年4月20日 10:34