全局配置
小程序根目錄下的 app.json
文件用來對微信小程序進行全局配置,決定頁面文件的路徑、窗口表現、設置網絡超時時間、設置多 tab 等。
以下是一個包含了部分常用配置選項的 app.json
:
{
//頁面文件的路徑 "pages": [ "pages/index/index", "pages/logs/index" ],
//所有主體窗口表現 "window": {
"navigationBarBackgroundColor": "#ffffff", "navigationBarTextStyle": "black", "navigationBarTitleText": "微信接口功能演示", "backgroundColor": "#eeeeee", "backgroundTextStyle": "light"
},
//多 tabbar "tabBar": { "list": [{ "pagePath": "pages/index/index", "text": "首頁" }, { "pagePath": "pages/logs/logs", "text": "日志" }] }, "networkTimeout": { "request": 10000, "downloadFile": 10000 }, "debug": true, "navigateToMiniProgramAppIdList": [ "wxe5f52902cf4de896" ] }
sitemap 配置
小程序根目錄下的 sitemap.json
文件用來配置小程序及其頁面是否允許被微信索引。
完整配置項說明請參考小程序 sitemap 配置
例1:
{ "rules":[{ "action": "allow", "page": "*" }] }
所有頁面都會被微信索引(默認情況)
例2:
{ "rules":[{ "action": "disallow", "page": "path/to/page" }] }
配置 path/to/page
頁面不被索引,其余頁面允許被索引
例3:
{ "rules":[{ "action": "allow", "page": "path/to/page" }, { "action": "disallow", "page": "*" }] }
配置 path/to/page
頁面被索引,其余頁面不被索引
例4:
{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "inclusive" }, { "action": "allow", "page": "*" }] }
包含 a 和 b
參數的 path/to/page
頁面會被微信優先索引,其他頁面都會被索引,例如:
path/to/page?a=1&b=2
=> 優先被索引path/to/page?a=1&b=2&c=3
=> 優先被索引path/to/page
=> 被索引path/to/page?a=1
=> 被索引- 其他頁面都會被索引
例5:
{ "rules":[{ "action": "allow", "page": "path/to/page", "params": ["a", "b"], "matching": "inclusive" }, { "action": "disallow", "page": "*" }, { "action": "allow", "page": "*" }] }
path/to/page?a=1&b=2
=> 優先被索引path/to/page?a=1&b=2&c=3
=> 優先被索引path/to/page
=> 不被索引path/to/page?a=1
=> 不被索引- 其他頁面不會被索引
注:沒有 sitemap.json 則默認所有頁面都能被索引
注:{"action": "allow", "page": "*"}
是優先級最低的默認規則,未顯式指明 "disallow" 的都默認被索引
如何調試
當在小程序項目中設置了 sitemap
的配置文件(默認為 sitemap.json
)時,便可在開發者工具控制台上顯示當前頁面是否被索引的調試信息( 最新版本的開發者工具支持索引提示)
注:sitemap
的索引提示是默認開啟的,如需要關閉 sitemap
的索引提示,可在小程序項目配置文件 project.config.json
的 setting
中配置字段 checkSiteMap
為 false