• ionic 弹窗(alert, confirm)


    直接上代码吧,不解释了

    控制器:

    angular.module('app.controllers', [])
    .controller('categoryCtrl', ['$scope', '$http', '$stateParams','$ionicLoading','$ionicPopup',
    function ($scope, $http, $stateParams, $ionicLoading, $ionicPopup) {
        window.$ionicPopup = $ionicPopup;
    
        $scope.test     = function(){
            alert('什么鬼??', function(){
                alert('神经病啊!', function(){
                    confirm('你的傻的么?', function(){
                        alert('看来是啊。');
                    }, function(){
                        show("<p style='text-align:center;'>你说你怎么不是傻的?</p><p><input type='text'></p>", {title:'你484傻的?', cancelText:'我承认了', okText:'我不是!', success:function(){
                            alert("唉哟,不错哦","好像有点道理wo~");
                        }});
                    });
                });
            });
        }
    }])

    common.js:

    function show(the_template, params){
        var the_title         = params.title || '';
        var the_subtitle    = params.subtitle || '';
        var timeout         = params.timeout;
        var the_cancelText  = params.cancelText || '取消';
        var the_okText       = params.okText || '确定';
    
        var myPopup = window.$ionicPopup.show({
            template: the_template,
            title: the_title,
            subTitle: the_subtitle,
            buttons:[
                {
                    text:the_cancelText,
                    onTap:function(){
                        return false;
                    }
                },
                {
                    text:the_okText,
                    type:'button-positive',
                    onTap:function(){
                        return true;
                    }
                }
            ]
        });
        myPopup.then(function(res) {
            if(res) {
                if(params.success) params.success(res);
            } else {
                if(params.error) params.error(res);
            }
        });
    
        if(timeout){
            window.setTimeout(function(){
                myPopup.close();
            }, timeout);
        }
    }
    
    function alert(the_title, the_content, the_callback){
        if(typeof(the_content)!='string'){
            the_callback = the_content;
            the_content  = the_title;
            the_title     = '系统提示';
        }
    
        if(typeof(the_content)!='string'){
            the_callback = the_content;
            the_content  = the_title;
            the_title     = '系统提示';
        }
    
        var alertPopup = window.$ionicPopup.alert({
            title: the_title,
            template: the_content,
            okText: '确定'
        });
    
        alertPopup.then(function(res) {
            if(the_callback) the_callback(res);
        });
    }
    
    function confirm(the_content, mixed, mixed2){
        var params = {};
        if(typeof(mixed)=='function'){
            params.success     = mixed;
            params.error     = mixed2;
        }else{
            params             = mixed; 
        }
    
        if(!params.title) params.title = '请确认?';
        show(the_content, params);
    }

    官方文档:http://ionicframework.com/docs/api/service/$ionicPopup/

  • 相关阅读:
    线性回归 r python 比较
    vps
    插桩 inline hook 动态二进制插桩的原理和基本实现过程
    duration of lease 1 0.5 0.875 DHCP 租借时间 续租时间 重新绑定时间
    单页应用 cookies处理
    websocket 无需通过轮询服务器的方式以获得响应 同步在线用户数 上线下线 抓包 3-way-handshake web-linux-shell 开发
    code_action
    mysql 表级锁
    mysql 表级锁
    块级标签和行级标签
  • 原文地址:https://www.cnblogs.com/tujia/p/6209147.html
Copyright © 2020-2023  润新知