uni-app
?通過 pages 節點配置應用由哪些頁面組成,pages 節點接收一個數組,數組每個項都是一個對象,其屬性值如下:
屬性 | 類型 | 默認值 | 描述 |
---|---|---|---|
path | String | 配置頁面路徑 | |
style | Object | 配置頁面窗口表現,配置項參考下方?pageStyle | |
needLogin | Boolean | false | 是否需要登錄才可訪問 |
?Tips:
- pages節點的第一項為應用入口頁(即首頁)
- 應用中新增/減少頁面,都需要對 pages 數組進行修改
- 文件名不需要寫后綴,框架會自動尋找路徑下的頁面資源
style
用于設置每個頁面的狀態欄、導航條、標題、窗口背景色等。這里重點說一下navigationStyle
navigationStyle | String | default | 導航欄樣式,僅支持 default/custom。custom即取消默認的原生導航欄,需看使用注意 |
uni-app
中的頁面,默認保存在工程根目錄下的pages
目錄下。
新建頁面
每次新建頁面,均需在pages.json
中配置pages
列表;未在pages.json -> pages
?中注冊的頁面,uni-app
會在編譯階段進行忽略。
刪除頁面
刪除頁面時,需做兩件工作:
- 刪除
.vue
文件、.nvue
、.uvue
文件 - 刪除
pages.json -> pages
列表項中的配置 (如使用HBuilderX刪除頁面,會在狀態欄提醒刪除pages.json對應內容,點擊后會打開pages.json并定位到相關配置項)
示例代碼:
"pages": [ //pages數組中第一項表示應用啟動頁{"path": "pages/index/index","style": {"navigationBarTitleText": "uni-app"}},{"path" : "pages/classfy/classfy","style" : {"navigationBarTitleText" : "分類","navigationBarBackgroundColor": "#F2E6DE","navigationBarTextStyle": "black","enablePullDownRefresh": true}},{"path" : "pages/user/user","style" : {"navigationBarTitleText" : "個人中心"}}]
?注意:如果page里style配置跟上一篇提到的globalStyle配置了同樣的屬性,那么該頁面的樣式最終會以page里style為準。可以根據開發實際需要靈活選擇使用全局配置,還是頁面自定義配置。
自定義導航欄使用注意
當navigationStyle設為custom或titleNView設為false時,原生導航欄不顯示,此時要注意幾個問題:
- 非H5端,手機頂部狀態欄區域會被頁面內容覆蓋。這是因為窗體是沉浸式的原因,即全屏可寫內容。uni-app提供了狀態欄高度的css變量--status-bar-height,如果需要把狀態欄的位置從前景部分讓出來,可寫一個占位div,高度設為css變量。
關于路由配置更多信息,詳見官方文檔pages.json 頁面路由 | uni-app官網