如何将属性传递给 Vue Js 中路由器调用的组件
How can I pass properties to a component which is called by router in Vue Js
我是 VueJs 的新手,我有两个组件的问题。我正在尝试使用 vuejs router 显示一个组件,我必须将属性传递给该组件,因为它不是该组件的子组件(它在不同的目录中),我如何将数据传递给该组件?
例如:
这是父组件:
<template>
<div class="container">
<router-link to="/Form"></router-link>
</div>
</template>
<script>
export default{
data(){
return{
values: {val1: 123, val2: 321}
}
}
}
</script>
这是一个需要属性的组件,表单组件:
<template>
<div class="container">
<form>
<input type="text" v-model="values.val1"/>
<input type="number" v-model="values.val2"/>
</form>
</div>
</template>
<script>
export default{
props: {
values: {
type: Object
}
}
}
</script>
您可以将值作为 query
对象传递:
<router-link :to="{ path: '/Form', query: values }"></router-link>
并让表单组件检查 $route.query
值,而不是使用 props
:
<template>
<div class="container">
<form>
<input type="text" v-model="values.val1"/>
<input type="number" v-model="values.val2"/>
</form>
</div>
</template>
<script>
export default {
data() {
return {
values: this.$route.query
}
}
}
</script>
请注意,这些值将作为查询字符串添加到 URL。
要不然我就看看. Or maybe look into Vuex.
我是 VueJs 的新手,我有两个组件的问题。我正在尝试使用 vuejs router 显示一个组件,我必须将属性传递给该组件,因为它不是该组件的子组件(它在不同的目录中),我如何将数据传递给该组件? 例如:
这是父组件:
<template>
<div class="container">
<router-link to="/Form"></router-link>
</div>
</template>
<script>
export default{
data(){
return{
values: {val1: 123, val2: 321}
}
}
}
</script>
这是一个需要属性的组件,表单组件:
<template>
<div class="container">
<form>
<input type="text" v-model="values.val1"/>
<input type="number" v-model="values.val2"/>
</form>
</div>
</template>
<script>
export default{
props: {
values: {
type: Object
}
}
}
</script>
您可以将值作为 query
对象传递:
<router-link :to="{ path: '/Form', query: values }"></router-link>
并让表单组件检查 $route.query
值,而不是使用 props
:
<template>
<div class="container">
<form>
<input type="text" v-model="values.val1"/>
<input type="number" v-model="values.val2"/>
</form>
</div>
</template>
<script>
export default {
data() {
return {
values: this.$route.query
}
}
}
</script>
请注意,这些值将作为查询字符串添加到 URL。
要不然我就看看