1. 傳值
不詳細(xì)介紹傳值方法厉膀,只是列一下可用的
1.1 路由傳值
1.2 編程式傳值
1.3 props傳值(父傳子,子傳父)
1.4 vuex(大概理解只盹。翎苫。。)
1.5 global event bus
1.6 emit事件傳值
1.7 ref父組件調(diào)用子組件的方法和數(shù)據(jù)(渲染結(jié)束時(shí)候才存在)
2. 指針的指向
=>箭頭函數(shù)指向固定(離自己最近的對象)
其余的函數(shù)都指向函數(shù)的調(diào)用者
在vue中的如果想指向?qū)嵗憔郏梢允褂米兞哭D(zhuǎn)存this指針宽闲。
3. vue自定義指令
官方推薦在自定義指令里面使用dom操作众眨。
封裝一個(gè)類似于v-for的工具函數(shù),但是不能封裝一個(gè)過于復(fù)雜的容诬。
4. js
觸發(fā)標(biāo)簽的點(diǎn)擊事件:選中的標(biāo)簽.click()/.onclick()
獲取標(biāo)簽:js中獲取多個(gè)標(biāo)簽娩梨,取到的是一個(gè)數(shù)組,可以通過下標(biāo)選擇具體的標(biāo)簽览徒。
5. vue模板渲染
在模板中變量中有常亮狈定,當(dāng)數(shù)據(jù)還沒有請求下來的時(shí)候,常量被當(dāng)做變量放在模板中习蓬,數(shù)據(jù)請求到后纽什,被當(dāng)做變量的常量沒有值,所以就會進(jìn)行報(bào)錯(cuò)躲叼。
typeError:Cannot read property ‘0’ of undefined
(解決辦法芦缰,在包含常量的標(biāo)簽加一個(gè)v-for=“”判斷是否取到值,當(dāng)值取到的時(shí)候在進(jìn)行渲染)
6. vue中可以 :class"{'類名' :標(biāo)識位}"
通過標(biāo)識位的值判斷是否給標(biāo)簽添加對應(yīng)的類枫慷。
7. axios 發(fā)送post請求向后臺發(fā)送的是默認(rèn)的json格式進(jìn)行提交让蕾,后臺服務(wù)器需要做相應(yīng)的支持,引入qs模塊或听。
8. vue組件的原聲控件添加事件需要在事件后面添加.native才可以綁定上事件探孝。
9. vue1.0和vue2.0動(dòng)畫有差別,使用的時(shí)候注意誉裆。
10. 引用多種框架樣式之間樣式可能會有沖突顿颅,解決辦法1.在想要添加的樣式加上!important2.改框架源碼樣式的代碼足丢。項(xiàng)目打包完后粱腻,a標(biāo)簽也得在css中進(jìn)行修改,否則也會有默認(rèn)的藍(lán)色斩跌,十分的丑栖疑。
11. webApp引入高德地圖組件后應(yīng)該先進(jìn)行判斷是否載入高德地圖api和高德地圖組件。
mounted(){
this_ = this;
this.axios.get('http://webapi.amap.com/maps?v=1.4.1&key=e19ded39d2e04fb3a2c8feb252f03c0c').then(response=>{
// console.log(response.data.data.storeList);
if (window.AMap && window.AMapUI) {
this.$nextTick(function(){
this.loadmap(this_);//加載地圖和相關(guān)組件
})
// 未載入高德地圖API滔驶,則先載入API再初始化
}
})
}
12. 引入別人的組件庫時(shí)候,粘貼的默認(rèn)示例代碼如下:
<script src="http://unpkg.com/iview/dist/iview.min.js"></script>
<script src="http://webapi.amap.com/ui/1.0/main.js"></script>
<script src="http://vuejs.org/js/vue.min.js"></script>
這樣引入的js直接 在瀏覽器中運(yùn)行不會報(bào)錯(cuò)卿闹,但是在壓縮的時(shí)候揭糕,不是絕對路徑,會找不到做對應(yīng)js文件锻霎。將代碼改為加上http:請求才可以取到:
<script src="http://unpkg.com/iview/dist/iview.min.js"></script>