vue.jsの変数に問題があります。Vue.js変数が正しく更新されない
シナリオ - ユーザがログインするときに、に変数loggedIn
を設定し、ユーザがログアウトしたときにfalse
に設定する必要があります。私のコード:
index.js:
export default {
state: {
loggedIn : false
},
login() {
var self = this;
var creds = {
username: 'username',
password: 'password'
}
$.ajax({
url: '/login',
type: 'POST',
data: creds,
success: function(response) {
self.state.loggedIn = true;
alert('Logged in!!');
},
error: function() {
alert('Error logging in!');
}
});
},
}
App.vue:あなたはApp.vue
で、見ることができるように
import auth from './index.js';
module.exports = {
data: function() {
return {
loggedIn: auth.state.loggedIn,
}
},
watch: {
loggedIn: function() {
alert('loggedIn value has changed!!!');
}
},
}
、私loggedIn
変数がindex.js
から輸入しているものに依存します。しかし、App.vue
のloggedIn
は、loggedIn
に反応して、index.js
には現れません。
誰かが私が間違っているかもしれないことを知っていますか?
ありがとうございます!
PERFECT!あなたの魂を祝福してください! –