无法读取未定义的 属性“$route”

Cannot read property '$route' of undefined

我试图访问导出默认部分之外的 $route,但它未定义。它可以在导出默认值和模板部分的任何位置访问。我们如何在导出默认部分之外访问 $route.name?

import { useMeta } from "quasar";

const metaData = {
  title: this.$route.name,  // <---- HERE
  titleTemplate: (title) => `${title}`,
};

export default {
  setup() {
   useMeta(metaData);
  }
}

您可以在观察器中声明您的 metaData 对象,以便 $route() 挂钩并完全停止使用 setup()

import { useMeta } from "quasar";

export default {
  watch: {
    $route () {
      const metaData = {
        title: this.$route.name,
        titleTemplate: (title) => `${title}`,
      }
      useMeta(metaData);
    }
  }
}