Vee*_*383 3 vue-component vuejs2
我有两种形式(添加和编辑)。两个表单中的所有字段都完全相同(即模板相同)。这两种形式都可以通过各自的按钮从主页访问。如何为添加表单和编辑表单重用单个 Vue 模板?
我正在用 TypeScript 编写基于类的组件。
您可以创建一个称为customform
或其他名称的组件,然后声明将传递到组件中的道具以指定它的类型(编辑表单,创建表单)然后在表单中您需要编写逻辑,如下所示:
<customForm :edit="true" :create="false" :data="data"></customForm>
Run Code Online (Sandbox Code Playgroud)
然后在表单组件中:
<template>
<form class="customform">
<div class="row">
<label>Email: </label><input type="text" value="{{data.email || ''}}">
</div>
</form>
</template>
<script>
export default {
props: {
edit: {
type: Boolean,
default: false
},
create: {
type: Boolean,
default: false
},
data: {}
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
想法是能够使用道具呈现表单(例如,如果编辑为真,那么您将必须注入值并更改表单的操作,如果创建,则字段的值将为空,操作将是不同的......等)