热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mui---子页面调用父页面的自定义方法

目前在开发APP的时候,有这样的一个需求:需要在登录页面返回后能够刷新父页面。功能是这样的:在A.html页面有头像和用户昵称,这些信息需要用户进行登录才能够拿到,登录页面是在B.html,点击

目前在开发APP的时候,有这样的一个需求:需要在登录页面返回后能够刷新父页面。

功能是这样的:在 A.html页面有头像和用户昵称,这些信息需要用户进行登录才能够拿到,登录页面是在B.html,点击A.html页面,跳转到B.html进行登录,在B.html登录成功后返回,返回的时候需要更新A.html的头像和用户昵称。

方法:在B.html页面点击返回的时候,触发A.html页面的自定义方法来实现。

具体看代码:项目是用VUE来做的,所以...

B.html :添加 beforeback方法:

mounted: function(){
    mui.init({
        beforeback:function(){
            var list = plus.webview.getWebviewById('music-index.html');
            mui.fire(list,'refresh');
            return true;
        },
    });
},

A.html 做接受这个方法,当然这个fire还可以进行传递参数

mounted: function() {        
    window.addEventListener('refresh',()=>{
        console.log('refresh fun');
        this.initialize(); // 具体方法
    });        
},

 简答示例:a.html

DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>title>
<link rel="stylesheet" type="text/css" href="../css/mui.min.css">
<style type="text/css">
*{margin:0px; padding:0px;}
div.main{width: 100%; position: absolute; top:0px; right:0px; bottom:0px; left:0px; background:#eee;}
div.main-scroll{width: 100%; position: absolute; top:0px; right:0px; bottom:0px; left:0px; overflow: scroll;}
ul.list{width: 100%;}
ul.list li{width: 100%; line-height: 40px; padding-left: 10px;}
style>
head>
<body>
<div class="main" id="main">
    <div class="main-scroll">
        <ul class="list">
            <li v-for="x in list" @tap="details">{{x}}li>
        ul>
    div>
div>
body>
<script type="text/Javascript" src="../js/vue.min.js">script>
<script type="text/Javascript" src="../js/mui.min.js">script>
<script type="text/Javascript">
var main = new Vue({
    el: "#main",
    data: {
        list:[],
        num:0,
    },
    mounted: function() {
        this.getList();
        window.addEventListener('init',()=>{
            this.initialize(); // location.reload();
        });        
    },
    watch: {},
    methods: {  
        initialize:function(){
            this.num ++;
            this.getList();
        },
        getList:function(){
            var lists = [];
            for(var i=0; i<50; i++){
                lists.push(""+this.num+"");
            };
            this.list = lists;
        },
        details:function(){
            mui.openWindow({
                url:'./a-details.html',
                id:'a.html',
                createNew:true,
                styles:{top:'0px',bottom:'0px'},
                show:{autoShow:true,aniShow:'slide-in-bottom',duration:260},
                waiting:{autoShow:false,title:'',options:{}}
            });
        },
    }
});
script>
html>

跳转到详情:a-details.html

doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>Documenttitle>
<link rel="stylesheet" type="text/css" href="../css/mui.css">
<style type="text/css">
div.main{width: 100%; position: absolute; top:0px; right:0px; bottom:0px; left:0px; background:#eee;}
div.main-scroll{width: 100%; position: absolute; top:0px; right:0px; bottom:0px; left:0px; overflow: scroll; background:orange;}
style>
head>
<body> 
<div class="main">
    <div class="main-scroll">
        <button class="mui-action-back">点击返回button>
    div>
div>
<script type="text/Javascript" src="../js/vue.min.js">script>
<script type="text/Javascript" src="../js/mui.min.js">script>
<script type="text/Javascript">
var main = new Vue({
    el: "#main",
    data: {
        list:[],
    },
    mounted: function(){
        mui.plusReady(()=>{
            var selfWindow = plus.webview.currentWebview();
            // 如果是固定的跳转 可以直接返回到固定的页面
            // 如果点击进来的页面不固定 需要将点击来的页面ID传递过来
            mui.init({
                beforeback:function(){
                    var parent = plus.webview.getWebviewById('a.html');
                    // 还可以传值 mui.fire('home.html','init',{mid:3});
                    mui.fire(parent,'init');                   
                    return true;
                },
            });
        });        
    },
    watch: {},
    methods: {  
        initialize:function(){          
            this.getUserInfo();
            this.getMusicList();
            this.getFigureList();
        }, 
    }
});
script>
body>
html>

 


推荐阅读
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 本文详细介绍了如何使用Python中的smtplib库来发送带有附件的邮件,并提供了完整的代码示例。作者:多测师_王sir,时间:2020年5月20日 17:24,微信:15367499889,公司:上海多测师信息有限公司。 ... [详细]
  • 在PHP中如何正确调用JavaScript变量及定义PHP变量的方法详解 ... [详细]
  • python模块之正则
    re模块可以读懂你写的正则表达式根据你写的表达式去执行任务用re去操作正则正则表达式使用一些规则来检测一些字符串是否符合个人要求,从一段字符串中找到符合要求的内容。在 ... [详细]
  • Python多线程详解与示例
    本文介绍了Python中的多线程编程,包括僵尸进程和孤儿进程的概念,并提供了具体的代码示例。同时,详细解释了0号进程和1号进程在系统中的作用。 ... [详细]
  • Spring Data JdbcTemplate 入门指南
    本文将介绍如何使用 Spring JdbcTemplate 进行数据库操作,包括查询和插入数据。我们将通过一个学生表的示例来演示具体步骤。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 2022年2月 微信小程序 app.json 配置详解:启用调试模式
    本文将详细介绍如何在微信小程序的 app.json 文件中启用调试模式(debug),并通过实际案例展示其配置方法和应用场景。 ... [详细]
  • 本文介绍了如何在 ASP.NET 中设置 Excel 单元格格式为文本,获取多个单元格区域并作为表头,以及进行单元格合并、赋值、格式设置等操作。 ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • importpymysql#一、直接连接mysql数据库'''coonpymysql.connect(host'192.168.*.*',u ... [详细]
  • 开发日志:高效图片压缩与上传技术解析 ... [详细]
  • 利用REM实现移动端布局的高效适配技巧
    在移动设备上实现高效布局适配时,使用rem单位已成为一种流行且有效的技术。本文将分享过去一年中使用rem进行布局适配的经验和心得。rem作为一种相对单位,能够根据根元素的字体大小动态调整,从而确保不同屏幕尺寸下的布局一致性。通过合理设置根元素的字体大小,开发者可以轻松实现响应式设计,提高用户体验。此外,文章还将探讨一些常见的问题和解决方案,帮助开发者更好地掌握这一技术。 ... [详细]
author-avatar
suzhaolie
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有