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>
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.