this. $ store не определен в компоненте - PullRequest
0 голосов
/ 07 ноября 2019

Мой компонент самого высокого уровня не определен this.$store, что приводит к ошибкам. Непосредственно перед моим новым заявлением Vue я подтвердил, что магазин действительно создан. Vue Devtools сообщает о моем магазине и показывает, что он обладает всеми ожидаемыми свойствами. По сути, хранилище не внедряется в компонент.

Я использую Laravel Mix и строю только для времени выполнения. Я существенно сократил свою конфигурацию, но безрезультатно.

Яполностью озадачен тем, как решить эту проблему. Следующие сообщения SO не помогают:

app.js

import Vue from 'vue';
import BootstrapVue from 'bootstrap-vue';
import Vuelidate from 'vuelidate';
import Router from 'vue-router';
import Vuex from 'vuex';
import App from './layout/index';

Vue.use(BootstrapVue);
Vue.use(Vuelidate);
Vue.use(Router);
Vue.use(Vuex);
Vue.config.productionTip = false;

const store = new Vuex.Store({
});

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

webpack.mix.js

const mix = require('laravel-mix');
require('laravel-mix-eslint');

mix
  .js('resources/js/app.js','public/js')
  .options({
    processCssUrls: false,
  })
  .sass(
    'resources/sass/app.scss',
    'public/css',
    {
      implementation: require('node-sass'),
    }
  )
  .styles(
      [
        'node_modules/bootstrap/dist/css/bootstrap.min.css',
        'node_modules/bootstrap-vue/dist/bootstrap-vue.min.css'
      ],
      'public/vendor.css'
  )

if (mix.inProduction()) {
  mix.version();
} else {
  mix
    .sourceMaps()
    .webpackConfig({
      devtool: 'cheap-eval-source-map', // Fastest for development
    });
}

1 Ответ

0 голосов
/ 09 ноября 2019

Не все мои ссылки Vue указывают на ссылку, использованную в операторе new Vue. Рефакторинг кода, чтобы все Vue ссылки использовали один и тот же объект, решил проблему.

...