這個問題很簡單,但也很復雜。復雜是因為你得了解vue的生命周期才能明白。
vue的data里面的變量之所以未定義是因為vue在給這個data里面的變量賦值的時候,是先創建dom,然后再賦值,
如果你在代碼里直接調用data里的變量的值,那會顯示未定義,因為dom未渲染完成。你可以用beforeCreat賀create這兩個鈎子去打印比方說data里定義了a為666,接着你在console里面可以看到,兩個都是未定義。
解決方法:在onload方法里給data的變量賦值即可。
注:一般來說,我們都是在data里面初始化變量,然后通過onload去判斷dom已經渲染完成后再去賦值給變量。