【发布时间】:2017-03-12 02:34:00
【问题描述】:
我正在尝试在 Laravel 5.3 应用程序的 vuejs 中创建一个 ajax 表单组件。但是,我想,我一直坚持显示表单字段。谁能帮帮我?
呈现表单的前端:
<ajax-form
:autocomplete=false
:schema="[{
label: 'Username:',
type: 'text',
id: 'username',
name: 'username',
placeholder: 'Eg. johndoe',
inputClass: 'input is-info',
model: 'username',
required: true,
}, {
label: 'Email:',
type: 'email',
id: 'email',
name: 'email',
placeholder: 'Eg. johndoe@example.com',
inputClass: 'input is-info',
model: 'email',
required: true,
}, {
label: 'Password',
type: 'password',
id: 'password',
name: 'password',
placeholder: 'Eg. password',
inputClass: 'input is-info',
model: 'password',
required: true,
}, {
label: 'Confirm Password',
type: 'password',
id: 'confirm_password',
name: 'confirm_password',
placeholder: 'Eg. password',
inputClass: 'input is-info',
model: 'confirm_password',
required: true,
}]"
></ajax-form>
还有 AjaxForm.vue 文件中的template:
<form method="POST">
<div v-for="field in schema">
<label class="label">{{ field.label }}</label>
<p class="control">
<input
type="field.type"
name="field.name"
id="field.id"
class="field.inputClass"
placeholder="field.placeholder"
required="field.required"
v-model="field.model"
>
</p>
</div>
</form>
以及script标签的内容:
<script>
export default {
props: {
autocomplete: Boolean,
schema: Array
}
}
</script>
P.S.:我刚刚开始学习组件,所以,这可能是一个愚蠢的错误。
【问题讨论】:
标签: javascript laravel laravel-5.3 vue-component vue.js