uni.showModal安卓环境操作按钮顺序对调

发布时间 2023-03-27 10:27:26作者: 小呀小恐龙

问题:

uni.showModal在H5、IOS等环境中确认按钮在右边,安卓中则在左边。

解决方案:

添加如下代码后,重新编译后生效。

// 在main.js中添加如下代码
// #ifdef APP-PLUS
if (uni.getSystemInfoSync().platform == "android") {
    uni.showModalReset = uni.showModal;//重置方法,不然会重复循环调用
    uni.showModal = function({
        title,
        content,
        showCancel,
        cancelText,
        cancelColor,
        confirmText,
        confirmColor,
        editable,
        placeholderText,
        success: successReset,
        fail: failReset,
        complete: completeReset
    }) {
        uni.showModalReset({
            title,
            content,
            showCancel,
            cancelText: confirmText || '确定',
            cancelColor: confirmColor || '',
            confirmText: cancelText || '取消',
            confirmColor: cancelColor || '',
            editable,
            placeholderText,
            success: (res) => {
                let obj = {};
                res.confirm ? obj.cancel = 1 : obj.confirm = 1;
                successReset && successReset(obj)
            },
            fail: (e) => {
                failReset && failReset(e)
            },
            complete: (e) => {
                completeReset && completeReset(e)
            },
        });
    }
};
// #endif