nativescript-vue navigateTo 在 vue 组件之外
Posted
技术标签:
【中文标题】nativescript-vue navigateTo 在 vue 组件之外【英文标题】:nativescript-vue navigateTo outside of vue component 【发布时间】:2020-03-20 04:18:28 【问题描述】:您好,我昨天解决了一个问题,但又出现了。
我尝试使用一个函数在我的 vue 页面之间进行路由。
routes.js
import Page from '../components/Page'
const routes =
Page
export const vue = routes
Navigator.js
import topmost from 'tns-core-modules/ui/frame'
function navigateTo (page)
topmost().currentPage.__vuePageRef__.$navigateTo(page)
export navigateTo
Vue 页面:
import navigateTo from "../router/navigator";
created: function()
navigateTo(routes.vue.Page);
但它给我带来了错误
System.err: TypeError: Cannot read property 'currentPage' of undefined
我记得我昨天通过将 navigateTo 'function' 更改为 'default function' 解决了这个问题。
但这一次它给我抛出了一个错误,叫做:
System.err: TypeError: Object(...) is not a function
当我通过 routes.vue.Page
感谢您的帮助。
【问题讨论】:
【参考方案1】:它并不能精确地修复您遇到的错误,但还可以正常工作。
路由器.js
import login from "./views/Login";
import home from "./views/Home";
export default
login,
home
main.js
import Vue from "nativescript-vue";
import router from "./router";
Vue.prototype.$goTo = function(to, props, params)
if (!router[to]) return;
this.$navigateTo(router[to],
props,
...params // clearHistory, backstackVisible
);
组件.vue
export default
methods:
goToLogin()
this.$goTo("login");
,
goToHome(prop)
this.$goTo("home", prop , clearHistory: true );
【讨论】:
以上是关于nativescript-vue navigateTo 在 vue 组件之外的主要内容,如果未能解决你的问题,请参考以下文章
如何更改 nativescript-vue 中的 RadDataForm 样式? (Nativescript-Vue)