Javascript 是否可以将vue组件添加到传统html表单中?

Javascript 是否可以将vue组件添加到传统html表单中?,javascript,html,vue.js,dom,Javascript,Html,Vue.js,Dom,是否可以将vue输入组件添加到标准html表单?我知道这不是处理vue表单的理想方法,但我很好奇,这是一种将自定义元素添加到预先存在的html表单中的“快速而肮脏”的方法。下面是一个假设的例子: <form action="/users" accept-charset="UTF-8" method="post"> <input type="email" name="user[email]" /> <input type="password" name="us

是否可以将vue输入组件添加到标准html表单?我知道这不是处理vue表单的理想方法,但我很好奇,这是一种将自定义元素添加到预先存在的html表单中的“快速而肮脏”的方法。下面是一个假设的例子:

<form action="/users" accept-charset="UTF-8" method="post">
  <input type="email" name="user[email]" />
  <input type="password" name="user[password]" />
  <my-custom-fancy-vue-component />
  <input type="submit"value="Sign up">
</form>

我想知道浏览器是否可以读取vue组件中输入元素公开的值,并在用户提交表单时将其作为参数发送。如果vue组件内部不使用本机输入,可能使用web组件作为包装或使用影子dom,是否有其他方法告诉浏览器如何从vue组件访问值?

提交表单时,浏览器应包括表单中的任何
元素。浏览器不会在意
是否位于Vue组件内

对于尚未具有
(或其他合适的表单元素)的组件,可以添加隐藏输入
,以保存值

如果要包含的组件是第三方组件,则无法直接添加隐藏的输入。但是,您仍然可以使用包装器组件添加它。下面的示例说明了如何处理该场景

const第三方组件={
模板:`
增量{{value}}
`,
道具:['value'],
方法:{
onClick(){
this.$emit('input',this.value+1)
}
}
}
常量myCustomFancyVueComponent={
模板:`
`,
组成部分:{
第三方成分
},
数据(){
返回{
柜台:4
}
}
}
新Vue({
el:'表格',
组成部分:{
myCustomFancyVueComponent
}
})