recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Lorsque le composant Vue communique via eventBus, une erreur a.$on n'est pas une fonction est signalée

Composant de connexion
importer le bus depuis "@/components/eventBus"
export par défaut {
nom : 'login',
data () {

return {
  navcard:['首页','工作室简介','人员分工','项目计划','重点故障分析','技能创新','带徒传技','技能培训','技术交流论坛'],
  username:'',
  userpassword:'',
  loginstate:'3'
}
},
methods:{
login:function(){
    this.$http.get("http://localhost/web/njndc1/api.php",{params:{
    'username':this.username,'userpassword':this.userpassword,'action':'login'
    }}).then(
        function (res) {            
            // 处理成功的结果
           this.loginstate=res.body;
           console.log(this.loginstate)
           if(res.body==1){
           var self=this;
            this.$router.push('/mainpage')
            bus.$emit("login_loginstae",'success')                
           }else{
           bus.$emit("login_loginstae",'failed')        
           }      
        },function (res) {
        // 处理失败的结果
        alert('程序错误')
        }
    );
}

}
}
</script>
Composant de page principale
<script>
importer le bus depuis "@/components/eventBus"
export par défaut {
nom : 'login',
data () {

return {
  navcard:['首页','工作室简介','人员分工','项目计划','重点故障分析','技能创新','带徒传技','技能培训','技术交流论坛'],
  username:'',
  userpassword:'',
  msg:''
}
},
methods:{

},
créé(){

  var self=this;
  bus.$on("login_loginstate",function(msg){
       console.log(msg)
  self.msg=msg
  }
 

)
}
}
</script>

怪我咯怪我咯2751 Il y a quelques jours1281

répondre à tous(1)je répondrai

  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:33:37

    Résolu. Mon répertoire de fichiers d'origine a mis eventBus dans src/components, et le nom du fichier était .vue. Plus tard, je l'ai mis directement sous Assets/ et j'ai changé le nom du fichier en .js.

    répondre
    1
  • Annulerrépondre