账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vuex因为是单独的执行函数文件,如何让本组件下使用的函数在单独的文件下也能用?
    19
    0
    methods:{
            loginSubmit(name) {
                const self = this;
                self.modal_loading = true;
                self.$refs[name].validate((valid) => {
                    if (valid) {
                        let loginObj={
                            mobile: this.logPrefix+this.form1.mobile,
                            password: this.form1.password,
                        };
                        this.$store.dispatch('login',loginObj);
                      
                    }
                })
            },
    }

    如上,在当前组件传入登录信息,调用action登录,
    我ui组件用的iview,我想登录失败的时候,调用iview的 this.$Message.error("") 弹出错误提示
    但是这里不能直接用this. ,说找不到error方法,请问有什么办法解决?

    login({state,commit},payload) {
            axios.post('/login ',payload).then((res) => {
                Cookies.set('mobile', res.data.user.mobile);
                //                            Cookies.set('userId', res.data.user.id);
                Cookies.set('username', res.data.user.username);
                Cookies.set('token', res.data.token);
                Cookies.set('userType', res.data.userType);
                if(res.data.merchant){
                    Cookies.set('auditStatus', res.data.merchant.status);
                    Cookies.set('checkMessage', res.data.merchant.checkMessage);
                    Cookies.set('merchantPhone', res.data.merchant.phone);
                    Cookies.set('auditStatus', res.data.merchant.leaderPhone);
                }else{
                    Cookies.set('auditStatus', "未提交审核");
                }
                if (res.data.userType === 'admin') {
                    Cookies.set('access', 0);
                } else if(res.data.userType === 'user'){
                    Cookies.set('access', 1);
                }else{
                    Cookies.set('access', 2);
                }
                if(self.$route.query.redirect){
                    //                                let redirect = decodeURIComponent(this.$route.query.redirect);
                    let redirect = this.$route.query.redirect;
                    self.$router.push(redirect);
                }else{
                    self.$router.push('/');
                }
            }).catch((error) => {
                if(error.response.data.errorMassage){
                    this.$Message.error(error.response.data.errorMassage);
                }else{
                    this.$Message.error("登录开小差了~请再试一遍");
                }
                self.modal_loading = false;
            });
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部