'Vue' не определено в моем плагине ShopWare 6 Javascript - PullRequest
0 голосов
/ 11 марта 2020

Vue. js добавлено в мою метку:

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

Я встраиваю некоторые пользовательские Vue logi c в мою ShopWare 6 веб-сайт (пока не с Vue витриной).

В моем собственном ShopWare 6 javascript плагин файл vue-input-number/vue-input-number.plugin.js У меня есть:

import Plugin from 'src/plugin-system/plugin.class';

export default class VueInputNumber extends Plugin {
    init() {

        window.Vue = Vue;

        const App = new Vue({
            el: '#app',
            data: {
                message: 'Hello Vue!',
            },
            delimiters: ['[[',']]'],
        })
    }
}

Когда я компилирую этот .js файл ./psh.phar storefront:build, я получаю сообщение об ошибке:

error  'Vue' is not defined                      no-undef
error  'App' is assigned a value but never used  no-unused-vars
error  'Vue' is not defined                      no-undef

Что мне нужно сделать, чтобы я мог создавать новые Vue экземпляры в моих Javascript файлах?

1 Ответ

1 голос
/ 13 марта 2020

Я думаю, что вы столкнулись с некоторыми ошибками ESLint, потому что Vue неизвестен конфигурации веб-пакета Shopware 6 в Витрине. Вы можете попробовать добавить Vue к .eslintrc:

// platform/src/Storefront/Resources/app/storefront/.eslintrc.js
module.exports = {
    // ...

    'globals': {
        'gtag': true,
        'Vue': true <-- Add Vue here
    },

    // ...
};

. Или вы можете отключить ESLint для линии, которая использует Vue:

// eslint-disable-next-line
const App = new Vue({
    el: '#app',
    data: {
        message: 'Hello Vue!',
    },
    delimiters: ['[[',']]'],
})
...