微信小程序学习笔记之页面配置与路由方式

编辑: admin 分类: javascript 发布时间: 2022-01-05 来源:互联网

最近在学习回顾小程序的开发,将一些学习结果做个笔记。参考微信小程序官方文档:developers.weixin.qq.com/miniprogram…

一、小程序配置

1、全局配置

小程序根目录下的 app.json 文件用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。

// 示例
{
  "pages": [
    "pages/index/index",
    "pages/logs/index"
  ],
  "window": {
    "navigationBarTitleText": "Demo"
  },
  "tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首页"
    }, {
      "pagePath": "pages/logs/index",
      "text": "日志"
    }]
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  },
  "debug": true
}

2、页面配置

每一个小程序页面也可以使用同名 .json 文件来对本页面的窗口表现进行配置,页面中配置项会覆盖 app.json 的 window 中相同的配置项。

// 示例
{
  "navigationBarBackgroundColor": "#ffffff",
  "navigationBarTextStyle": "black",
  "navigationBarTitleText": "微信接口功能演示",
  "backgroundColor": "#eeeeee",
  "backgroundTextStyle": "light"
}

3、sitemap配置

注:sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false。

小程序根目录下的 sitemap.json 文件用来配置小程序及其页面是否允许被微信索引。

关于是否被微信索引有两种配置方式:

1、页面收录设置:可对整个小程序的索引进行关闭,小程序管理后台-功能-页面内容接入-页面收录开关;

2、sitemap 配置:可对特定页面的索引进行关闭。

// 所有页面都会被微信索引(默认)
{
    "rules":[{
        "action":"allow",
        "page":"*"
    }]
}
// path/to/page 页面不被索引,其余的会被索引
{
    "rules":[{
        "action":"disallow",
        "page":"path/to/page"
    }]
}

二、小程序的五个路由

1、wx.navigateTo()

保留当前页面,跳转到应用内的某个页面。不能跳转到tabbar页面。小程序中页面栈最多十层,超过的可以使用wx.redirectTo来跳转。

wx.navigateTo({
    url:"list?id=2",
    events:{
        // 页面间通信接口,用于监听被打开页面发送到当前页面的数据。
        someEvent:function(data){
            console.log(data)
        }
    },
    success:function(res){
        // 通过eventChannel向被打开页面传送数据
        res.evnetChannel.emit('someEvent',{dta:'list'})
    }
})

2、wx.redirectTo()

关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到tabbar页面。

// 示例
wx.redirectTo({
    url:'list?id=2',
    success:function(){},
    fail:function(){}
})【原URL http://www.yidunidc.com/mggfzq.html 请说明出处】

3、wx.switchTab()

跳转到tabBar页面,并关闭其他所有非tabBar页面。

wx.switchTab({
    url:'/index'
})

4、wx.navigateBack()

关闭当前页面,返回上一页面或多级页面。可以通过getCurrentPages获取当前的页面栈,决定需要返回几层。

// 此处是A页面
wx.navigateTo({
  url: 'B?id=1'
})

// 此处是B页面
wx.navigateTo({
  url: 'C?id=1'
})

// 在C页面内 navigateBack,将返回A页面
wx.navigateBack({
  delta: 2
})

5、wx.reLaunch()

关闭所有页面,打开到应用内的某个页面。

//示例
wx.reLaunch({
    url:'list?id=2'
})

注:另外和跳转相关的webview中的页面怎么跳转回小程序?

wx.miniPrograme.navigateTo({
    url:'pages/login/login'+'params'
})
// 跳转到小程序的导航页面
wx.miniPrograme.switchTab({
    url:"/pages/index/index"
})

总结

到此这篇关于微信小程序学习笔记之页面配置与路由方式的文章就介绍到这了,更多相关小程序页面配置与路由方式内容请搜索海外IDC网以前的文章或继续浏览下面的相关文章希望大家以后多多支持海外IDC网!