javascript - 在 Vue.js 中的路由器链接的“:to”属性中传递一个道具
问题描述
我在 vue 中创建路由器链接并将路由名称作为道具传递给它时遇到问题......我想做的基本上是这样的:
<template>
<div>
<router-link :to="myProps">Login</router-link>
</div>
</template>
<script>
export default {
name: componentName,
props: {
myProps: {
type: String,
default: '{ name: login }'
}
}
}
</script>
登录当然是在我的路由器中定义的。但是当我将路线作为道具提供时,我被重定向到/%7B%20name:%20'login'%20%7D
. 你知道解决这个问题的任何技巧吗?
解决方案
你从默认值得到的是一个字符串,但你需要一个对象。以这种方式尝试:
props: {
myProps: {
type: Object,
default: () => ({name: 'login'})
}
}
这里有更多关于 props 默认值的信息:https ://vuejs.org/v2/guide/components-props.html#Prop-Validation
推荐阅读
- java - 生命周期错误未涵盖插件执行
- docker - Docker 立即退出
- reactjs - 我不明白为什么在这个例子中我的组件被调用了两次
- javascript - String.localeCompare 返回不正确的值?
- carousel - 在引导程序 myCarousel 中拉伸的图像
- reporting-services - 引用“无”时切换功能未返回正确值
- django - 将 2 个缓存条目合并为一个
- wordpress - 在其他用户不工作的情况下在 Mac 上运行 XAMPP
- javascript - 有没有办法从两个范围输入中获取值并给方程一个自定义值?
- javascript - 在映射之前按属性对对象数组进行排序