请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

5-1 页面传值提示 webview[movie-detail] does not exist at js/mui.min.js:6

列表页面代码如下:

1
2
3
<li class="mui-table-view-cell" v-for="item in movies" @tap="open_detail(item)">
        ...
</li>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
   
            //预加载电影详情页面
            var detailPage = mui.preload({
                id:'movie-detail',
                url:'./html/movie-detail.html'
            });
             
             
             
            //打开电影详情页面
            function open_detail(item){
                //触发详情页面的movieId事件
                mui.fire(detailPage,'movieId',{
                    id:item.id
                });
                 
                //打开详情页
                mui.openWindow({
                    id:'movie-detail'
                });
            }          
            

详情页代码如下:

1
2
3
4
5
6
7
8
9
10
            mui.init();
             
            //添加 movieId 自定义事件
            window.addEventListener("movieId",function(event){
                 
                //获取事件参数
                var id = event.detail.id;
                console.log(id);
                 
            });


正在回答

插入代码

2回答

需要把页面的预加载放在mui.plusReady函数中才可以,因为这样写的话可能会预加载失败,在打开页面的时候使用预加载的页面id没有找到对应页面才会报这个错误。希望回答对您有帮助。

1 回复 有任何疑惑可以回复我~
  • 提问者 hezhou233 #1
    非常感谢就像您说的确实是这样
    回复 有任何疑惑可以回复我~ 2017-12-17 23:27:01
  • 提问者 hezhou233 #2
    另外贴出官网最佳实践的网址供大家参考:
    http://ask.dcloud.net.cn/article/12575
    回复 有任何疑惑可以回复我~ 2017-12-17 23:38:02
提问者 hezhou233 2017-12-17 23:27:36
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/**
 * 下面是我修改之后的部分代码,如果有相同问题的小伙伴可以参考指正
 */
mui.plusReady(function(){
         
    //其他代码
    .....
 
    //预加载电影详情页面
    var detailPage = mui.preload({
        id: 'movie-detail',
        url: './html/movie-detail.html'
    });
      
      
    return out = {
        detailPage : detailPage
    }
});
      
     
//打开电影详情页面
function open_detail(item){
    //触发详情页面的movieId事件
    mui.fire(out.detailPage,'movieId',{
        id:item.id
    });
    //打开详情页
    mui.openWindow({
        id:'movie-detail'
    });
}


2 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号