小程序端审核隐藏功能通过传参指定
This commit is contained in:
		@@ -1,97 +1,97 @@
 | 
			
		||||
var defaultTabbarItem = [
 | 
			
		||||
  "pages/person/person",
 | 
			
		||||
  "pages/residents/report",
 | 
			
		||||
  "pages/index/index"
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export function toggle(that) {
 | 
			
		||||
  let pages = getCurrentPages()
 | 
			
		||||
  let route = pages[pages.length - 1].route
 | 
			
		||||
  console.log("[CustomTabBar] route", route)
 | 
			
		||||
 | 
			
		||||
  if (!typeof that.getTabBar === 'function' || !that.getTabBar()) {
 | 
			
		||||
    // wx.showModal({
 | 
			
		||||
    //   title: '版本太旧',
 | 
			
		||||
    //   content: '您的微信版本太旧,无法使用本小程序',
 | 
			
		||||
    //   showCancel: false,
 | 
			
		||||
    //   complete: (res) => {
 | 
			
		||||
    //     wx.exitMiniProgram()
 | 
			
		||||
    //   }
 | 
			
		||||
    // })
 | 
			
		||||
    return
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // 找出要选择哪一项
 | 
			
		||||
  let tabBar = that.getTabBar()
 | 
			
		||||
  console.log("[CustomTabBar] tabBar", tabBar)
 | 
			
		||||
 | 
			
		||||
  let data = tabBar.data
 | 
			
		||||
  console.log("[CustomTabBar] data", data)
 | 
			
		||||
 | 
			
		||||
  let showPagePathList = wx.getStorageSync('tabbarItem') || defaultTabbarItem
 | 
			
		||||
  console.log("[CustomTabBar] showPagePathList", showPagePathList)
 | 
			
		||||
 | 
			
		||||
  let list = tabBar.data.rawList.filter((page) => showPagePathList.includes(page.pagePath))
 | 
			
		||||
  console.log("[CustomTabBar] tabBarList", list)
 | 
			
		||||
 | 
			
		||||
  let selected = list ? list.indexOf(list.find(p => p.pagePath == route)) : -1
 | 
			
		||||
  console.log("[CustomTabBar] selected", selected)
 | 
			
		||||
 | 
			
		||||
  console.log("更新tabbar")
 | 
			
		||||
 | 
			
		||||
  // 选中这一项
 | 
			
		||||
  tabBar.setData({
 | 
			
		||||
    selected: selected,
 | 
			
		||||
    list: list
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function updateConfig(baseUrl) {
 | 
			
		||||
  // 请求配置文件(用于审核时隐藏部分功能)
 | 
			
		||||
  wx.request({
 | 
			
		||||
    url: baseUrl + '/getConfig',
 | 
			
		||||
    success(result) {
 | 
			
		||||
      let data = result.data
 | 
			
		||||
      if (data.tabbarItem) {
 | 
			
		||||
        console.log("[CustomTabBar] tabbar数据拉取完毕")
 | 
			
		||||
        wx.setStorageSync('tabbarItem', data.tabbarItem)
 | 
			
		||||
        wx.setStorageSync('indexItem', data.indexItem)
 | 
			
		||||
 | 
			
		||||
        const pages = getCurrentPages();
 | 
			
		||||
        const indexPage = pages[0]
 | 
			
		||||
        const currentPage = pages[pages.length - 1]
 | 
			
		||||
        console.log("[CustomTabBar] indexPage", indexPage)
 | 
			
		||||
        console.log("[CustomTabBar] currentPage", currentPage)
 | 
			
		||||
 | 
			
		||||
        // // 更新tabbar
 | 
			
		||||
        // toggle(currentPage)
 | 
			
		||||
        // 刷新首页中包含了触发 toggle 的代码 此处不重复触发
 | 
			
		||||
 | 
			
		||||
        // 刷新首页
 | 
			
		||||
        indexPage && indexPage.onLoad()
 | 
			
		||||
 | 
			
		||||
        // let tabBar = currentPage.getTabBar()
 | 
			
		||||
        // tabBar.setData({
 | 
			
		||||
        //   list: tabBar.data.rawList.filter((page) => itemList.includes(page.pagePath))
 | 
			
		||||
        // })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    fail() {
 | 
			
		||||
      wx.showModal({
 | 
			
		||||
        title: '小程序启动失败',
 | 
			
		||||
        content: '点击确认重试,若多次失败请检查网络连接',
 | 
			
		||||
        complete: (res) => {
 | 
			
		||||
          if (res.cancel) {
 | 
			
		||||
            wx.exitMiniProgram()
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          if (res.confirm) {
 | 
			
		||||
            wx.reLaunch({
 | 
			
		||||
              url: 'pages/index/index',
 | 
			
		||||
            })
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
var defaultTabbarItem = [
 | 
			
		||||
  "pages/person/person",
 | 
			
		||||
  "pages/residents/report",
 | 
			
		||||
  "pages/index/index"
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
export function toggle(that) {
 | 
			
		||||
  let pages = getCurrentPages()
 | 
			
		||||
  let route = pages[pages.length - 1].route
 | 
			
		||||
  console.log("[CustomTabBar] route", route)
 | 
			
		||||
 | 
			
		||||
  if (!typeof that.getTabBar === 'function' || !that.getTabBar()) {
 | 
			
		||||
    // wx.showModal({
 | 
			
		||||
    //   title: '版本太旧',
 | 
			
		||||
    //   content: '您的微信版本太旧,无法使用本小程序',
 | 
			
		||||
    //   showCancel: false,
 | 
			
		||||
    //   complete: (res) => {
 | 
			
		||||
    //     wx.exitMiniProgram()
 | 
			
		||||
    //   }
 | 
			
		||||
    // })
 | 
			
		||||
    return
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  // 找出要选择哪一项
 | 
			
		||||
  let tabBar = that.getTabBar()
 | 
			
		||||
  console.log("[CustomTabBar] tabBar", tabBar)
 | 
			
		||||
 | 
			
		||||
  let data = tabBar.data
 | 
			
		||||
  console.log("[CustomTabBar] data", data)
 | 
			
		||||
 | 
			
		||||
  let showPagePathList = wx.getStorageSync('tabbarItem') || defaultTabbarItem
 | 
			
		||||
  console.log("[CustomTabBar] showPagePathList", showPagePathList)
 | 
			
		||||
 | 
			
		||||
  let list = tabBar.data.rawList.filter((page) => showPagePathList.includes(page.pagePath))
 | 
			
		||||
  console.log("[CustomTabBar] tabBarList", list)
 | 
			
		||||
 | 
			
		||||
  let selected = list ? list.indexOf(list.find(p => p.pagePath == route)) : -1
 | 
			
		||||
  console.log("[CustomTabBar] selected", selected)
 | 
			
		||||
 | 
			
		||||
  console.log("更新tabbar")
 | 
			
		||||
 | 
			
		||||
  // 选中这一项
 | 
			
		||||
  tabBar.setData({
 | 
			
		||||
    selected: selected,
 | 
			
		||||
    list: list
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function updateConfig(baseUrl) {
 | 
			
		||||
  // 请求配置文件(用于审核时隐藏部分功能)
 | 
			
		||||
  wx.request({
 | 
			
		||||
    url: baseUrl + '/getConfig?v=2',
 | 
			
		||||
    success(result) {
 | 
			
		||||
      let data = result.data
 | 
			
		||||
      if (data.tabbarItem) {
 | 
			
		||||
        console.log("[CustomTabBar] tabbar数据拉取完毕")
 | 
			
		||||
        wx.setStorageSync('tabbarItem', data.tabbarItem)
 | 
			
		||||
        wx.setStorageSync('indexItem', data.indexItem)
 | 
			
		||||
 | 
			
		||||
        const pages = getCurrentPages();
 | 
			
		||||
        const indexPage = pages[0]
 | 
			
		||||
        const currentPage = pages[pages.length - 1]
 | 
			
		||||
        console.log("[CustomTabBar] indexPage", indexPage)
 | 
			
		||||
        console.log("[CustomTabBar] currentPage", currentPage)
 | 
			
		||||
 | 
			
		||||
        // // 更新tabbar
 | 
			
		||||
        // toggle(currentPage)
 | 
			
		||||
        // 刷新首页中包含了触发 toggle 的代码 此处不重复触发
 | 
			
		||||
 | 
			
		||||
        // 刷新首页
 | 
			
		||||
        indexPage && indexPage.onLoad()
 | 
			
		||||
 | 
			
		||||
        // let tabBar = currentPage.getTabBar()
 | 
			
		||||
        // tabBar.setData({
 | 
			
		||||
        //   list: tabBar.data.rawList.filter((page) => itemList.includes(page.pagePath))
 | 
			
		||||
        // })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    fail() {
 | 
			
		||||
      wx.showModal({
 | 
			
		||||
        title: '小程序启动失败',
 | 
			
		||||
        content: '点击确认重试,若多次失败请检查网络连接',
 | 
			
		||||
        complete: (res) => {
 | 
			
		||||
          if (res.cancel) {
 | 
			
		||||
            wx.exitMiniProgram()
 | 
			
		||||
          }
 | 
			
		||||
 | 
			
		||||
          if (res.confirm) {
 | 
			
		||||
            wx.reLaunch({
 | 
			
		||||
              url: 'pages/index/index',
 | 
			
		||||
            })
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    }
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user