Vuejs2 自定义Vue组件的v型vs道具
Vue中的v-model是一种内置功能,仅适用于少数选定的标记吗?道具功能是v-model的替代品吗?您的问题: Vue中的Is v-model是一种内置功能,仅适用于少数情况 选定的标签 是的,Vuejs2 自定义Vue组件的v型vs道具,vuejs2,vue-component,Vuejs2,Vue Component,Vue中的v-model是一种内置功能,仅适用于少数选定的标记吗?道具功能是v-model的替代品吗?您的问题: Vue中的Is v-model是一种内置功能,仅适用于少数情况 选定的标签 是的,v-model适用于用户可以交互或修改数据的所有标签:输入、文本区域、收音机,选择 您可以对自定义HTML的内置输入类型使用v-model。Vue组件允许您以完全定制的行为构建可重用的输入。看更多 道具功能是v型的替代品吗 不,props是父组件与其子组件共享数据的方式,v-model是同一组件、表单或
v-model
适用于用户可以交互或修改数据的所有标签:输入、文本区域、收音机,选择
您可以对自定义HTML的内置输入类型使用v-model
。Vue组件允许您以完全定制的行为构建可重用的输入。看更多
道具功能是v型的替代品吗
不,props
是父组件与其子组件共享数据的方式,v-model
是同一组件、表单或用户输入中的数据绑定(双向数据绑定)
我建议你阅读 您的问题:
Vue中的Is v-model是一种内置功能,仅适用于少数情况
选定的标签
是的,v-model
适用于用户可以交互或修改数据的所有标签:输入、文本区域、收音机,选择
您可以对自定义HTML的内置输入类型使用v-model
。Vue组件允许您以完全定制的行为构建可重用的输入。看更多
道具功能是v型的替代品吗
不,props
是父组件与其子组件共享数据的方式,v-model
是同一组件、表单或用户输入中的数据绑定(双向数据绑定)
我建议你阅读
Vue中的v-model是一种内置功能,仅适用于少数选定的标记吗
默认情况下,v-model
是一种在表单元素上工作的模型,但您也可以在自己的组件中使用它。它实际上只是接受名为“value”的属性并发出名为“input”的事件的组件的简写
以下是使用v型的任意组件的样板:
<template>
<div>
My value is {{displayValue}}
<button @click="go">Change it</button>
</div>
</template>
<script>
export default {
name: 'exampleComponent',
props: ['value'],
data() {
return {displayValue: ''}
},
mounted() {
this.displayValue = this.value; // initialize internal variables
},
watch: {
value() {
// Parent property changed; update internal variables
this.displayValue = this.value;
}
},
methods: {
go() {
// example change handler
this.$emit('input', "NEW VALUE"); // tell the parent to update to the new value. This will update via the watch:value()
}
}
};
</script>
我的值是{{displayValue}}
改变它
导出默认值{
名称:“exampleComponent”,
道具:['value'],
数据(){
返回{displayValue:''}
},
安装的(){
this.displayValue=this.value;//初始化内部变量
},
观察:{
值(){
//父属性已更改;更新内部变量
this.displayValue=this.value;
}
},
方法:{
go(){
//示例更改处理程序
this.$emit('input','NEW VALUE');//告诉父级更新为新值。这将通过watch:VALUE()更新
}
}
};
然后,父组件可以像处理任何其他表单元素一样执行
道具功能是v型的替代品吗
只有一半。道具是一种将值向下传递给子组件的方法,但道具本身并不能让您将该值的更改反馈给父组件;为此,您需要$emit
更改后的值
(当然,你也可以不用v-model
,使用你自己命名的道具和发射装置就可以很好地做到这一点,但我发现如果我坚持v-model
结构,我就不必想那么多;当我六个月后回来改变一些东西时,我就更容易理解我在做什么。)
Vue中的v-model是一种内置功能,仅适用于少数选定的标记吗
默认情况下,v-model
是一种在表单元素上工作的模型,但您也可以在自己的组件中使用它。它实际上只是接受名为“value”的属性并发出名为“input”的事件的组件的简写
以下是使用v型的任意组件的样板:
<template>
<div>
My value is {{displayValue}}
<button @click="go">Change it</button>
</div>
</template>
<script>
export default {
name: 'exampleComponent',
props: ['value'],
data() {
return {displayValue: ''}
},
mounted() {
this.displayValue = this.value; // initialize internal variables
},
watch: {
value() {
// Parent property changed; update internal variables
this.displayValue = this.value;
}
},
methods: {
go() {
// example change handler
this.$emit('input', "NEW VALUE"); // tell the parent to update to the new value. This will update via the watch:value()
}
}
};
</script>
我的值是{{displayValue}}
改变它
导出默认值{
名称:“exampleComponent”,
道具:['value'],
数据(){
返回{displayValue:''}
},
安装的(){
this.displayValue=this.value;//初始化内部变量
},
观察:{
值(){
//父属性已更改;更新内部变量
this.displayValue=this.value;
}
},
方法:{
go(){
//示例更改处理程序
this.$emit('input','NEW VALUE');//告诉父级更新为新值。这将通过watch:VALUE()更新
}
}
};
然后,父组件可以像处理任何其他表单元素一样执行
道具功能是v型的替代品吗
只有一半。道具是一种将值向下传递给子组件的方法,但道具本身并不能让您将该值的更改反馈给父组件;为此,您需要$emit
更改后的值
(当然,你也可以不用
v-model
,使用你自己命名的道具和发射装置就可以很好地做到这一点,但我发现如果我坚持v-model
结构,我就不必想那么多;当我六个月后回来改变一些东西时,我就更容易理解我在做什么。)我编辑问题以反映我的核心问题我编辑问题以反映我的核心问题