programing

Vue와 함께 VeValidate를 사용하는 경우 "TypeError: 플러그인이 정의되지 않음" 오류를 수정하는 방법

prostudy 2022. 5. 18. 21:55
반응형

Vue와 함께 VeValidate를 사용하는 경우 "TypeError: 플러그인이 정의되지 않음" 오류를 수정하는 방법

추가 시:

Vue.use(VeeValidate);

내 Vue 페이지가 공백으로 표시되고 콘솔 오류:

TypeError: plugin is undefined

다음과 같은 오류를 발견했다.

Vue 플러그인 ve-ve-validate가 제대로 설치되지 않음

그러나 나는 내 .vue 문서의 어느 곳에서도 => 구문을 사용하고 있지 않다.

3.0.3, Vue 2.6.10의 ve-validate

전체 main.js 파일:

import Vue from 'vue'
import VeeValidate from 'vee-validate';
import App from './App.vue'

Vue.config.productionTip = false
Vue.use(VeeValidate);

new Vue({
  render: h => h(App),
}).$mount('#app')

내 App.vue 파일에 ValidationProvider를 구성 요소로 포함:

<script>
import CriteriaDataModel from './data-model/criteria-data-model.js';
import UserDataModel from './data-model/user-data-model.js';
import { ValidationProvider } from 'vee-validate';

export default {
  name: 'app',
  data: function() {
    return {
      criteriaModel: CriteriaDataModel,
      completeMessage: null,
      form: {
        user: UserDataModel
      }
    };
  },
  components: {
    ValidationProvider
  }
};
</script>

또한 Vue 초기화를 다음과 같은 도움 없이 변경해 보았다.

new Vue({
  render: function (h) { return h(App) },
}).$mount('#app')

나는 VeValidate가 node_module에서 '=' 구문(다른 스택 오버플로에서 문제가 되는 것으로 참조)을 많이 사용하는 것을 관찰했지만, Vue를 위해 그것을 사용하는 의도가 있기 때문에 그것이 문제인지 의문이 든다.

난 이걸 알아냈다.ve-validate의 기본 내보내기가 null인 것 같다.가져오기를 다음으로 변경한 후 작동됨:

import * as VeeValidate from 'vee-validate';

참조URL: https://stackoverflow.com/questions/57725257/how-to-fix-typeerror-plugin-is-undefined-error-when-using-veevalidate-with-vu

반응형