SkipTyler
@SkipTyler
Junior+ Front-End developer

Почему не работает переход по ссылке в edge (vue.js)?

Всем привет.

Есть у меня компонент - ссылка.
<a :href="link"
       @click="clickFacebook"
       class="NS-button NS-button__facebook-ico"
       target="_self"
    >
        <span class="ico--wrap">
           <svg>...</svg>
        </span>
        <span v-if="!isLoaded" v-html="title"></span>
        <i class="fa reg__next--spin" v-else></i>
    </a>


methods: {
    async clickFacebook () {
        this.isLoaded = true;
        await this.clickEventSave(this.someEventsName.clickButton.buttonThroughFacebook);
        this.$emit('click');
    }
},


В родительском компоненте повешено событие для click

<facebook-link
    class="hide-icon-xs"
    :link="links.facebook"
    :title="$t('landings_registration.pageSignup_RegFacebook')"
    @click="dataLayerPush(facebookDataLayer)"
>
</facebook-link>


Проблема заключается в том, что в браузере Edge не срабатывает переход по ссылке, только после второго клика.
Как быть?
Что не так делаю?

"vue": "^2.5.17",
  • Вопрос задан
  • 234 просмотра
Пригласить эксперта
Ответы на вопрос 1
@FullStackAlex
Веб-разработчик, электрик, кочевник
Если проблема связана с JavaScript a не с CSS (если например какой то элемент накрывает часть кнопки), то возможно нужно просто расширить "радиус" Babel.
https://webpack.js.org/loaders/babel-loader/
https://cli.vuejs.org/config/#babel

Мой "native" (то есть без vue-cli) webpack.common.js :

module.exports = {
    entry: {},
    resolve: {
        alias: { },
        extensions: []
    },
    plugins: [ ],
    module: {
        rules: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                exclude: /node_modules/,
                options: {
                    presets: ['@babel/preset-env'],
                    plugins: [
                        '@babel/plugin-proposal-object-rest-spread',
                        '@babel/plugin-syntax-dynamic-import',
                        'transform-es2015-arrow-functions'
                    ]
                }
            },
        ]
    }
};
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы