From 0809fce7c43a94c40f0b355e359221477facc51b Mon Sep 17 00:00:00 2001
From: chensiAb <chenchenco03@163.com>
Date: Thu, 16 May 2024 11:01:32 +0800
Subject: [PATCH] fix:'格式化大写PX变小写'

---
 bases/BridgeCenterBase.js |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 51 insertions(+), 8 deletions(-)

diff --git a/bases/BridgeCenterBase.js b/bases/BridgeCenterBase.js
index 118676f..746a4e8 100644
--- a/bases/BridgeCenterBase.js
+++ b/bases/BridgeCenterBase.js
@@ -26,15 +26,28 @@
         });
     }
 
+    /**
+     * 获取当前页面
+     * @return {Taro.Page}
+     */
     $getCurrentPage() {
         const pages = Taro.getCurrentPages();
         return pages[pages.length - 1];
     }
 
+    /**
+     * 获取当前页面路径
+     * @return {String}
+     */
     $getCurrentPagePath() {
         return this.$getCurrentPage().path.split('?')[0];
     }
 
+    /**
+     * 判断地址是否为当前页面
+     * @param {String} url
+     * @return {Taro.Page|null}
+     */
     $isCurrentPage(url) {
         const pages = Taro.getCurrentPages();
         const curPage = pages[pages.length - 1];
@@ -45,32 +58,62 @@
         }
     }
 
-    _checkPage(url, callback) {
+    /**
+     * 判断当前页面是否在列表中
+     * @param {Array} allows=[]
+     * @return {boolean}
+     */
+    $isCurPageInside(allows = []) {
+        const url = this.$getCurrentPagePath();
+        return allows.indexOf(url) >= 0;
+    }
+
+    _waitCurPage(url, callback) {
         let curPage = this.$isCurrentPage(url);
         if (curPage) {
             callback(curPage);
         } else {
             setTimeout(() => {
-                this._checkPage(url, callback);
+                this._waitCurPage(url, callback);
             }, 100);
         }
     }
 
+    /**
+     * 打开指定页面
+     * @param {String} url
+     * @param {Function} callback
+     */
     $openPage(url, callback) {
         const curPage = this.$isCurrentPage(url);
         // 需打开的是当前页面
         if (curPage) {
             callback(curPage);
         } else {
-            Taro.navigateTo({
-                url,
-                success: () => {
-                    this._checkPage(url, callback);
-                },
-            });
+            Taro.navigateTo({ url });
+            setTimeout(() => {
+                this._waitCurPage(url, callback);
+            }, 100);
         }
     }
 
+    /**
+     * 当前页下发通讯
+     * @param {String} method
+     * @param {Object} res
+     * @param {Function} [callback]
+     */
+    $curPageBridge(method, res, callback) {
+        this.$pageBridge(this.$getCurrentPage(), method, res, callback);
+    }
+
+    /**
+     * 对某个页面下发通知
+     * @param {Taro.Page} page
+     * @param {String} method
+     * @param {Object} res
+     * @param {Function} [callback]
+     */
     $pageBridge(page, method, res, callback) {
         if (!page.$component || !page.$component.$onBridge) {
             return;

--
Gitblit v1.9.1