Files
nova-map-fields/resources/js/components/FormField.vue
2021-09-06 15:50:36 +02:00

47 lines
1.1 KiB
Vue
Executable File

<template>
<default-field :field="field" :errors="errors" :full-width-content="true">
<template slot="field">
<component
v-if="value"
:is="'field-' + field.map.type"
:field="field"
:edit="true"
v-model="value"
></component>
</template>
</default-field>
</template>
<script>
import { FormField, HandlesValidationErrors } from "laravel-nova";
export default {
mixins: [FormField, HandlesValidationErrors],
props: ["resourceName", "resourceId", "field"],
methods: {
/*
* Set the initial, internal value for the field.
*/
setInitialValue() {
this.value = this.field.value || {};
},
/**
* Fill the given FormData object with the field's internal value.
*/
fill(formData) {
formData.append(this.field.attribute, JSON.stringify(this.value));
},
/**
* Update the field's internal value.
*/
handleChange(value) {
this.value = value;
},
},
};
</script>