legend2---開發日誌9(vue常見沒法自動更新改變的緣由是什麼)

legend2---開發日誌9(vue常見沒法自動更新改變的緣由是什麼)

1、總結

一句話總結:沒找到變量,好比在computed屬性中vue的變量沒加this

沒找到變量

 

一、函數中var bottom_exp_bar_vm = new Vue()這句代碼中js中找不到bottom_exp_bar_vm 的緣由是什麼?

函數中帶var的變量是局部變量
局部變量函數外找不到

函數中帶var的變量是局部變量,函數外確定找不到php

 

二、以爲工做量不少怎麼解決(好比妖族的圖片)?

編號

能夠編號便可,這樣可以很清晰的知道流程,還有完成進度和成就感vue

 

三、vue如何自動讀秒(好比免費招募時間的自動更新)?

computed屬性配合setInterval()
讓表示js當前時間戳的變量自動變化

computed屬性配合setInterval() 讓表示js當前時間戳的變量自動變化ajax

<script> $(function () { //控制【彈出獎勵的】的vue代碼
        main_content = new Vue({ el: '#main_content', data: { heroes: window.heroes, school_time: window.school_time, template_hero_collections: window.template_hero_collections, js_ts:new Date().getTime(), }, computed: { // 投奔英雄的【免費刷新】時間計算
                st_recruit_touben_time: function () { // `this` 指向 vm 實例
                    var time1=0; var php_ts=school_time.st_recruit_touben; if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts; return get_hms(time1); }, // 低級招募英雄的【免費一次】時間計算
                st_recruit_low_time: function () { // `this` 指向 vm 實例
                    var time1=0; var php_ts=school_time.st_recruit_low; if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts; return get_hms(time1); }, // 高級招募英雄的【免費一次】時間計算
                st_recruit_high_time: function () { // `this` 指向 vm 實例
                    var time1=0; var php_ts=school_time.st_recruit_high; if(((php_ts+1)*1000-this.js_ts)>=0) time1=(php_ts+1)*1000-this.js_ts; return get_hms(time1); }, } }); //刷新js_ts
        setInterval(function () { main_content.js_ts=new Date().getTime(); },1000); console.log(main_content.school_time); console.log(parseInt((new Date()).getTime()/1000));
        $('#main_content').show(); }); </script>

 

 

四、vue對於v-if中的內容會自動刷新麼,好比招募時免費按鈕的顯示?

對於v-if中的會自動刷新

對於v-if中的會自動刷新,computed屬性裏面想自動刷新的話加一個setInterval便可,保證computed裏面的vue變量加this數據庫

<a v-if="school_time.st_recruit_high>parseInt((new Date()).getTime()/1000+1)" onclick="recruit_hero(2,1)" class="btn btn-primary btn-xs recruit_hero">招募一次</a>

 

 

五、宗門時間表、宗門靈石表等表怎麼處理節約數據庫操做時間(從緩存方面思考)?

在base控制器中把對應表的id放進session

其實能夠把宗門對應的時間表,靈石表的id都讀到基礎控制器base裏面,也就是把對應的id放進session裏面,這樣每次找的時候能夠直接從找id來從查找數據,而不用其它好比宗門id這樣的條件緩存

 

六、vue的computed的getter和setter方法的做用是什麼?

getter是別人發生改變本身跟着變
setter是本身發生改變也讓別人跟着變

 

七、vue計算屬性變量書寫須要注意什麼?

computed中的vue中的變量必定要帶this

computed中的vue中的變量必定要帶this,這時候this表示vue,否則可能找不到服務器

 

八、vue計算屬性computed觸發條件的依賴變量最好怎麼寫(data的屬性改變,可是是根據data的屬性作的computed,想要保住computed更新,最好怎麼作)?

計算屬性中依賴的vue變量最好是後面改變要更新的

計算屬性中依賴的vue變量最好是後面改變要更新的,好比計算屬性中依賴的是data,那麼更新就更新data,同理若是是data的某個屬性session

 

 

九、函數的傳入參數名怎麼寫纔好?

寫的見名知意

寫的見名知意,這樣就不用看參數註釋了函數

 

十、服務器給ajax返回是否成功用什麼好(用數字好仍是用true,false好)?

用數字好  不一樣的success_num表示不一樣成功或者失敗的緣由

用success_num,不一樣的success_num表示不一樣成功或者失敗的緣由ui

 

 

 

2、內容在總結中

一、相關知識

 

 

二、代碼

相關文章
相關標籤/搜索