Vue-Router выдает «ReferenceError: jQuery не определен» - PullRequest
0 голосов
/ 29 января 2019

Я настраиваю новый проект vue, и маршрутизатор выдает в консоли следующее сообщение об ошибке:

"[vue-router] Не удалось разрешить асинхронный компонент по умолчанию: ReferenceError: jQuery не определен

[vue-router] необнаруженная ошибка при навигации по маршруту:

ReferenceError: jQuery не определен "

Я проверил, импортирован ли jQuery в файл * .vue: то естьдело.Также я переустановил пакет jQuery через npm.

Formular1.vue:

<script>
    import JQuery from 'jquery'
    let $ = JQuery;

    some code...

</script>

router.js:

import Vue from 'vue'
import Router from 'vue-router'
import Home from './views/Home.vue'

Vue.use(Router)

export default new Router({
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    },
    {
      path: '/about',
      name: 'about',
      // route level code-splitting
      // this generates a separate chunk (about.[hash].js) for this route
      // which is lazy-loaded when the route is visited.
      component: () => import(/* webpackChunkName: "about" */ 
'./views/About.vue')
    },
    {
      path: '/formular1',
      name: 'formular1',
      // route level code-splitting
      // this generates a separate chunk (about.[hash].js) for this route
      // which is lazy-loaded when the route is visited.
      component: () => import(/* webpackChunkName: "formular1" */ 
'./views/Formular1.vue')
    }
  ]
})

Я ожидал, что файл vue будет выполнен, новместо этого возникает ошибка.

Вся помощь приветствуется.


Редактировать: Formular1.vue:

<template>
    <div>
        <table>
            <thead>
                <th v-for="data in datas" :key="data.ED_KBEVLID"></th>
            </thead>
            <tbody>

            </tbody>
        </table>
    </div>
</template>

<script>
    import jQuery from 'jquery'
    let $ = jQuery;

    export default {
        name: 'Formular1',

        data: function () {
            return {
                datas: [],
            }
        },

        methods: {
            lade_daten: function () {
                let vm = this;
                $.getJSON("/api/call_evm.php", function(result){
                   vm.datas = result;
                });
            }
        },

        mounted(){
            this.lade_daten();
        }
    }
</script>

1 Ответ

0 голосов
/ 29 января 2019

jQuery отличается от JQuery, возможно, в этом проблема.

Проверьте, не написано ли везде в вашем коде одинаково, с использованием одинакового регистра букв.

...