uniapp在页面中中获取pages.json下pages设置navigationBarTitleText这个值?uniapp获取页面标题

一、问题描述

有个需求就是,在app.vue页面中首先会隐藏所有页面的title,然后在相应的页面会判断当前环境是否是在微信浏览器内,如果不是,则还原标题。

二、解决方法

在 pages.json 文件中设置 navigationBarTitleText,例如:

{
	"pages": [
    {
      "path": "pages/xxx/index",
      "style": {
        "navigationBarTitleText": "首页",
        "app-plus": {
          "bounce": "none"
        }
      }
    }]
}

在页面中,使用以下代码获取当前页面的 navigationBarTitleText 的值:

<template>
	<view>1111</view>
</template>
<script>
export default {
  data() {
    return {
      title: "",
    };
  },
  mounted() {
    const pages = getCurrentPages();
    const currentPage = pages[pages.length - 1];
    // #ifndef APP-PLUS
    this.title = currentPage.$page.meta.navigationBar.titleText;
    // #endif

    // #ifdef APP-PLUS
    let webView = currentPage.$getAppWebview();
    this.title = webView.getStyle().name;
    // #endif
  },
};
</script>

如果获取不到,可按如下方式,去跟踪,然后替换下面的代码

currentPage.$page.meta.navigationBar.titleText;

猜你喜欢

转载自blog.csdn.net/u011781521/article/details/136570283