如何使用带有vue组件的flatpickr?

时间:2018-04-07 19:23:31

标签: javascript vuejs2 vue-component

免责声明:我是vue.js的新手

我需要帮助让日期选择器使用我的模态组件。我已经制作了模态并且工作人员很好,我还安装了日期选择器('flatpickr'),当我在不在组件内的元素上调用它时,它工作正常。

然而,当我尝试在模态上使用它时,没有任何反应。我不确定我应该在组件中调用日期选择器,因为我认为你应该避免放任何有副作用的东西,因为我不会解析它们。

我不确定应该包括flatpickr脚本,它应该在模板中还是应该在我的主app.js中。

我的模态组件.vue

<template>
<div class="cis-modal is-active">
 <div class="cis-modal-background">
    <div class="cis-modal-content animated bounceInUp">
        <div class="card">
            <div class="card-body">

                <slot></slot>

            </div>
        </div>
    </div>
    <button class="cis-modal-close" @click="$emit('closed')"><i class="fa fa-times" aria-hidden="true"></i></button>
</div>
</div>

<script>
 export default {
 }
</script>

flatpickr脚本

<script>
 $("#talentDOB").flatpickr({
 enableTime: true,
 dateFormat: "F, d Y H:i"
});

被称为模态

<modal v-if="showEditTalentModal" @closed="showEditTalentModal = false;">
{!! Form::model($talent, ['method' => 'PATCH', 'action' =>     ['TalentController@update', $talent->user_id], 'files'=>true ]) !!}

<div class="form-group">
  {!! Form::label('dob', 'Date of Birth:') !!}
  {!! Form::text('dob', null, [ 'data-input','class'=>'form-control',  'required' => 'required', 'id' => 'talentDOB']) !!}
</div>

<div class="form-group">
 {!! Form::submit('Update Profile', ['class'=>'btn btn-primary']) !!}
</div>
{!! Form::close() !!}
</modal>

先谢谢你。

1 个答案:

答案 0 :(得分:1)

首先,导入组件。

import flatpickr from 'flatpickr'

然后在已挂载的位置创建flatpicker实例

flatpickr('#datepicker')

当然,您需要输入具有相同ID的输入

<input type="text" id="datepicker" v-model="dateValue" autocomplete="off"/>

实际上,在Vue中使用它没有任何特殊要求。