1、DEMO-聊天機器人
1掠兄、拿到文本框內容(v-model)像云,給它加keyup事件,只能由回車觸發(fā)
?2蚂夕、給按鈕加點擊事件迅诬,點擊事件觸發(fā)的代碼應該跟keyup一樣,所以他們調用同一個函數(shù)就行了
?3婿牍、把你輸入的內容渲染成li標簽
?4侈贷、把內容發(fā)請求到服務器,拿到服務器的回答,再渲染成li標簽
?5俏蛮、’把文本框內容清空
?6撑蚌、讓界面自動滾到最后
關于nexttick介紹:第三種解決辦法
2 Vue生命周期鉤子
傳送門:https://cn.vuejs.org/v2/guide/instance.html#%E5%AE%9E%E4%BE%8B%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E9%92%A9%E5%AD%90
生命周期鉤子:
beforeCreate:
vue實例剛剛創(chuàng)建完畢,但是還不能訪問data中的數(shù)據(jù)
created:
vue實例創(chuàng)建完畢搏屑,并且可以訪問data中的數(shù)據(jù)
beforeMount:
被Vue管理起來的DOM還沒渲染完争涌,但是快渲染了
mounted:
被Vue管理的DOM渲染完畢,所以在這個鉤子里可以訪問DOM元素了
beforeUpdate:
數(shù)據(jù)發(fā)生改變辣恋,但是界面還沒渲染
updated:
數(shù)據(jù)發(fā)生改變亮垫,并且界面也渲染完畢觸發(fā)
beforeDestroy
vue實例即將銷毀之前調用
destroyed
vue實例銷毀后調用
-----------------------------------------------------------------------------------------------------------------------------
目前學的Vue的生命周期鉤子
beforeCreate
數(shù)據(jù)發(fā)生改變,但是還沒渲染到頁面就會調用
vue剛剛創(chuàng)建調用的鉤子伟骨,不能訪問data和methods中的內容
created
vue創(chuàng)建完畢饮潦,可以訪問data和methods中的內容
beforeMount
dom被vue重新掛載之前調用,不能訪問dom元素
mounted
dom被vue重新掛載之后調用携狭,可以訪問dom元素
beforeUpdate
數(shù)據(jù)發(fā)生改變調用继蜡,但是此時dom還沒重新渲染
updated
后面如果數(shù)據(jù)發(fā)生改變,并且界面渲染完畢都會觸發(fā)(數(shù)據(jù)發(fā)生改變就會觸發(fā)逛腿,會觸發(fā)多次)
3 稀并、日期格式化庫 moment.js
[傳送門](http://momentjs.cn/docs/#/parsing/)
作用:獲取日期的,按格式來獲取日期字符串
moment() 獲取當前時間
moment(時間) 以傳入的時間為準
后面有個方法叫 format() 按格式輸出日期字符串
YYYY:4位年
MM:2位月
DD:2位日
HH:2位小時(24小時鳄逾,小寫h為12小時制)
mm:2位分
ss:2位秒
4 稻轨、vue計算屬性(computed:{? })
傳送門:https://cn.vuejs.org/v2/guide/computed.html#%E8%AE%A1%E7%AE%97%E5%B1%9E%E6%80%A7
有的時候屬性的值不是我們想要的,我們還需要經過計算得到結果雕凹,就可以用計算屬性
特點:
可以當普通屬性一樣來用
只要計算出結果殴俱,都會緩存起來,其他地方要用枚抵,直接從緩存結果拿
如果它里面依賴的數(shù)據(jù)變了线欲,會重新調用一次重新計算結果
復習字符串和數(shù)組方法
計算屬性:
計算屬性本質上是函數(shù),顯示的值是函數(shù)的返回值汽摹,只不過可以讓你像普通屬性那么使用李丰,所以我們稱之為計算屬性
計算屬性例子:
??它計算出一個結果后會緩存起來,后面要用就直接拿到這個緩存的結果
? ?如果他里面用到的數(shù)據(jù)發(fā)生改變逼泣,它會重新調用一次趴泌,重新計算
Demo-品牌管理
5 網絡請求庫axios
傳送門:https://github.com/axios/axios
專門用來發(fā)ajax請求的
axios更方便,庫文件更小拉庶,讓網頁打開速度更快嗜憔,因為它僅僅只是發(fā)ajax請求所以比較單純簡潔
用法:
axios發(fā)的post請求,請求報文里的提交的參數(shù)氏仗,默認使用的JSON格式(FormData)吉捶,如果想用以前的
Content-type:application/x-www-form-urlencoded這種形式
需要用到 URLSearchParams 這個對象
其他用法:
5.1 axios的基本用法
5.2 axios的另外一種用法
5.3 表單傳遞
axios.get('路徑',{ params:{參數(shù)} })
axios.post('路徑',{ 參數(shù) })
注意:如果接口是application/x-www-form-urlencoded,那么需要配合URLSearchParams對象來傳遞數(shù)據(jù),請求頭要改成application/x-www-form-urlencoded
另外寫法:
axios({})
method:請求方式
url:請求路徑
data:請求體,一般是POST寫
params:傳遞的數(shù)據(jù)呐舔,一般是GET請求寫
headers:設置請求頭