javascript - 如果未经授权的用户试图点击,如何重定向到登录页面? (vue.js)

标签 javascript laravel vue.js laravel-5.3 vuejs2

我的代码是这样的:

<script>
    export default{
        props:['idStore'],
        methods:{
            addFavoriteStore(event){
                $(function () {
                    $(document).ajaxError(function (e, xhr, settings) {
                        if (xhr.status == 401) {
                            window.Laravel.baseUrl+'/login'
                        }
                        else {
                            event.target.disabled = true
                            const payload= {id_store: this.idStore}
                            this.$store.dispatch('addFavoriteStore', payload)

                            setTimeout(function () {
                                location.reload(true)
                            }, 1500)
                        }
                    });
                });
            }
        }
    }
</script>

点击收藏按钮时,会调用addFavoriteStore方法

运行 addFavoriteStore 方法后,我将调用条件来检查是否有未授权用户。我尝试使用这样的条件,但它不起作用。我在控制台查看,没有报错

为什么条件不工作?

最佳答案

@moses-toh 很高兴我的建议奏效了:-)。

所以当你使用 laravel 和 blade 语法时,你可以使用 Blade/PHP 检查用户是否登录并提供 relivent 按钮/消息。所以就像你所做的那样:

   @if (Auth::user())
     <favorite-button>&heart; Favorite</favorite-button>
   @else
     <a href="{{route('login')}}">Login To Favorite</a>
   @endif

希望一切顺利

关于javascript - 如果未经授权的用户试图点击,如何重定向到登录页面? (vue.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41902259/

相关文章:

javascript - 增加输入值 - 我在这里做错了什么?

php - 如何捕获 Laravel 中的所有请求 URL

php - 未通过中间件时来自节流请求的 TypeError

javascript - 如何判断 Vue 组件是否处于事件状态

vue.js - VueJS 从实例访问组件

javascript - 将按钮添加到特定页面

javascript - Jframe 等同于 javascript

javascript - 导入nodejs报错

jquery - 选中复选框时启用下拉菜单

javascript - 计算数组vue中的中心项