VueJs2 Автозаполнение импортировано, но не работает - PullRequest
0 голосов
/ 20 мая 2019

У меня есть небольшой веб-проект в Laravel + VueJs, и теперь я перевожу его с VueJs 1.x на 2. Все было хорошо с помощником vue -igration-helper, но моя проблема с компонентом vuejsautocomplete.Я догадался, что для VueJs2 есть библиотека vuejs2autocomplete, основанная на vuejsautocomplete, поэтому я импортировал ее, затем использовал, но входные данные автозаполнения mi не работали должным образом.

Вот мой объект Vue

        var cadApp = new Vue({
            el: '#cadContainer',
            data: {
                inputPrestadorEfector: '',
                frmAfiliado: {
                    inputNumeroAfiliado: '',
                    inputDocumentoAfiliado: '',
                    inputTipoDocumentoAfiliado: '',
                },
                dataAfiliado: {
                    msje:'',
                    contextualClass:'',
                    idUnico:'',
                },//resultado de la consulta
                //prestaciones
                frmPrestaciones : {
                    inputPrestacionCodigo :'',
                    inputPrestacionDescripcion :'',
                },
                dataPrestacion: {
                    msje:'',//no viene en la consulta
                },//resultado de la consulta
                dataPrestaciones: {!! json_encode(old('dataPrestaciones') ?: []) !!},//lista de prestaciones consultadas
                //solicitudes
                frmSolicitud:{

                },
                dataSolicitud: {!! json_encode(old('dataSolicitud') ?: ['idSolicitud'=>0, 'msje'=>'', 'contextualClass'=>'']) !!},
//                {
//                    idSolicitud:0,//0 indica que la solicitud no fue creada
//                    msje:'',
//                    contextualClass:'',
//                },//resultado de la consulta
                solicitudes: [],
                loading: false,
                error: false,
                query: ''
            },
            components: {
                autocomplete: Vue2Autocomplete
            },
            methods: {
......
......

А вот как я использовал компонент автозаполнения (по крайней мере, в первой версии он работал)

<div class="input-group-addon">Código:</div>
                        <autocomplete
                                class="form-control"
                                name="inputPrestacionCodigo"
                                placeholder="Código práctica"
                                url="prestacion/codigo"
                                param="CODIGO_PRESTACION"
                                min="2"
                                max="9"
                                limit="50"
                                anchor="CODIGO_PRESTACION"
                                model="frmPrestaciones.inputPrestacionCodigo">
                        </autocomplete>

Vuedevtools распознает оба компонента автозаполнения, но в консоли браузера я получаю:

[Vue warn]: Failed to mount component: template or render function not defined.

found in

---> <Autocomplete>
       <Root>

1 Ответ

0 голосов
/ 30 мая 2019

Наконец, после некоторых исследований я нашел решение. Добавление по умолчанию к регистрации компонента решило проблему:

components: {
            autocomplete: Vue2Autocomplete.default
        },

Надеюсь, что это может помочь и другим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...