92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线

Github 用戶查詢案例【基于Vue2全局事件總線通信】

2023-1-5    前端達人

前言:

        本次案例是一個基于 Vue2 的全局事件總線通信的仿 Github 用戶搜索模塊,使用的接口是 Github 官方提供的搜索接口: https://api.github.com/search/users?q=xxx(發送請求時需要將輸入的用戶名稱綁定替換掉xxx),如果對全局事件總線不太熟練的小伙伴可以看這篇文章:http://t.csdn.cn/oHEOWhttp://t.csdn.cn/oHEOW

文章目錄:

一:效果展示 

二:代碼分析

2.1 綁定自定義事件 

2.2 觸發自定義事件 

三:源碼獲取


一:效果展示 

  • 未搜索用戶頁面

  •  查詢后加載中頁面

  •  查詢成功渲染頁面

  • 點擊頭像或下部鏈接進入用戶主頁

  •  查詢失敗頁面報錯提示


二:代碼分析

代碼共分為了兩個子組件,一個是搜索組件(Search),另一個是列表組件(List),其次search組件中輸入框v-model雙向數據綁定,點擊搜索后開始查詢,其中過程分為了四步:第一是未搜索的歡迎頁面背景,第二是請求未加載出來的loading背景,第三是渲染用戶列表,第四是請求失敗的報錯提示頁面背景。

2.1 綁定自定義事件 

綁定自定義事件在List組件中,data中的數據是定義了userinfo對象來存放其四個狀態的布爾值,后續的數據傳遞是直接傳遞userinfo這個對象,使用 $on 綁定自定義事件 getuserinfo,當這個事件觸發時執行后面的箭頭回調函數,將傳遞來的對象接收并覆蓋掉data中原有的四個狀態布爾值。

 
  1. <script>
  2. export default {
  3. name:'List',
  4. data() {
  5. return {
  6. UserInfo:{
  7. iswelcome:true,
  8. isloading:false,
  9. users:'',
  10. error:''
  11. }
  12. }
  13. },
  14. mounted(){
  15. this.$bus.$on('getUserInfo',(datas)=>{
  16. // console.log('list組件收到了傳來的用戶數據',res);
  17. this.UserInfo=datas
  18. console.log(datas);
  19. })
  20. }
  21. }
  22. </script>

2.2 觸發自定義事件 

點擊搜索按鈕即可使用 $emit 觸發自定義事件,在請求成功前會將 isloading 改為true,其余改為false進行數據傳遞,傳遞給 list 組件后期就會顯示出loading的背景頁面,其余同理

 
  1. <script>
  2. export default {
  3. name:'Search',
  4. data(){
  5. return {
  6. ipt_value:'',
  7. }
  8. },
  9. methods:{
  10. search(){
  11. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:true,users:'',error:''})
  12. this.$axios.get(`https://api.github.com/search/users?q=${this.ipt_value}`).then(
  13. response => {
  14. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:false,users:response.data.items,error:''})
  15. },
  16. error => {
  17. console.log(error);
  18. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:false,users:'',error:error})
  19. }
  20. )
  21. this.ipt_value=''
  22. }
  23. }
  24. }
  25. </script>




前言:

        本次案例是一個基于 Vue2 的全局事件總線通信的仿 Github 用戶搜索模塊,使用的接口是 Github 官方提供的搜索接口: https://api.github.com/search/users?q=xxx(發送請求時需要將輸入的用戶名稱綁定替換掉xxx),如果對全局事件總線不太熟練的小伙伴可以看這篇文章:http://t.csdn.cn/oHEOWhttp://t.csdn.cn/oHEOW

文章目錄:

一:效果展示 

二:代碼分析

2.1 綁定自定義事件 

2.2 觸發自定義事件 

三:源碼獲取


一:效果展示 

  • 未搜索用戶頁面

  •  查詢后加載中頁面

  •  查詢成功渲染頁面

  • 點擊頭像或下部鏈接進入用戶主頁

  •  查詢失敗頁面報錯提示


二:代碼分析

代碼共分為了兩個子組件,一個是搜索組件(Search),另一個是列表組件(List),其次search組件中輸入框v-model雙向數據綁定,點擊搜索后開始查詢,其中過程分為了四步:第一是未搜索的歡迎頁面背景,第二是請求未加載出來的loading背景,第三是渲染用戶列表,第四是請求失敗的報錯提示頁面背景。

2.1 綁定自定義事件 

綁定自定義事件在List組件中,data中的數據是定義了userinfo對象來存放其四個狀態的布爾值,后續的數據傳遞是直接傳遞userinfo這個對象,使用 $on 綁定自定義事件 getuserinfo,當這個事件觸發時執行后面的箭頭回調函數,將傳遞來的對象接收并覆蓋掉data中原有的四個狀態布爾值。

 
  1. <script>
  2. export default {
  3. name:'List',
  4. data() {
  5. return {
  6. UserInfo:{
  7. iswelcome:true,
  8. isloading:false,
  9. users:'',
  10. error:''
  11. }
  12. }
  13. },
  14. mounted(){
  15. this.$bus.$on('getUserInfo',(datas)=>{
  16. // console.log('list組件收到了傳來的用戶數據',res);
  17. this.UserInfo=datas
  18. console.log(datas);
  19. })
  20. }
  21. }
  22. </script>

2.2 觸發自定義事件 

點擊搜索按鈕即可使用 $emit 觸發自定義事件,在請求成功前會將 isloading 改為true,其余改為false進行數據傳遞,傳遞給 list 組件后期就會顯示出loading的背景頁面,其余同理

 
  1. <script>
  2. export default {
  3. name:'Search',
  4. data(){
  5. return {
  6. ipt_value:'',
  7. }
  8. },
  9. methods:{
  10. search(){
  11. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:true,users:'',error:''})
  12. this.$axios.get(`https://api.github.com/search/users?q=${this.ipt_value}`).then(
  13. response => {
  14. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:false,users:response.data.items,error:''})
  15. },
  16. error => {
  17. console.log(error);
  18. this.$bus.$emit('getUserInfo',{iswelcome:false,isloading:false,users:'',error:error})
  19. }
  20. )
  21. this.ipt_value=''
  22. }
  23. }
  24. }
  25. </script>
來源:csdn 藍藍設計建立了UI設計分享群,每天會分享國內外的一些優秀設計,如果有興趣的話,可以進入一起成長學習,請加微信ban_lanlan,報下信息,藍小助會請您入群。歡迎您加入噢~~ 希望得到建議咨詢、商務合作,也請與我們聯系01063334945。  分享此文一切功德,皆悉回向給文章原作者及眾讀者. 免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們取得聯系,我們立即更正或刪除。  藍藍設計www.skdbbs.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務UI設計公司、界面設計公司、UI設計服務公司、數據可視化設計公司、UI交互設計公司、高端網站設計公司、UI咨詢、用戶體驗公司、軟件界面設計公司

日歷

鏈接

個人資料

藍藍設計的小編 http://www.skdbbs.com

存檔

92国产精品视频_亚洲a级在线观看_国产精品电影观看_国产精品免费观看在线_精品伊人久久97_亚洲人成在线观_尤物九九久久国产精品的特点_成人激情在线播放_成人黄色大片在线免费观看_亚洲成人精品久久久_久久免费视频在线观看_久久精品国产一区_国产一区二区三区18_亚洲欧美中文字幕在线一区_日韩美女中文字幕_日韩视频免费在线
4438全国成人免费| 最近的2019中文字幕免费一页| 97视频免费在线观看| 亚洲免费影视第一页| 日韩电影在线观看中文字幕| 久久99视频免费| 久久全球大尺度高清视频| 国产精品夫妻激情| 欧美激情免费在线| 亚洲国产欧美日韩精品| 日韩综合视频在线观看| 这里只有精品丝袜| 亚洲第一网站免费视频| 欧美一级视频免费在线观看| 亚洲欧美国产精品久久久久久久| 精品久久久久久久中文字幕| 日本久久久久久久久| 国产精品视频一区国模私拍| 日韩av一卡二卡| 欧美日在线观看| 少妇高潮久久久久久潘金莲| 北条麻妃久久精品| 亚洲精品www久久久| 亚洲国产女人aaa毛片在线| 丰满岳妇乱一区二区三区| 97国产精品视频人人做人人爱| 777午夜精品福利在线观看| 亚洲视频自拍偷拍| 日韩av中文字幕在线免费观看| 亚洲一区二区少妇| 欧美老女人性视频| 精品福利在线视频| 欧美刺激性大交免费视频| 欧美激情精品久久久久久| 久久国产色av| 国产精品爽爽ⅴa在线观看| 亚洲精品乱码久久久久久金桔影视| 日本精品视频在线| 在线成人激情黄色| 97精品伊人久久久大香线蕉| 国产国语videosex另类| 欧美成年人网站| 在线亚洲国产精品网| 亚洲最新av网址| 国产香蕉一区二区三区在线视频| 亚洲精品www久久久| 国产日韩精品电影| 亚洲欧美制服另类日韩| 国产精品久久久久久中文字| 欧美日韩综合视频网址| 亚洲人成电影网站色…| 欧美性xxxxx极品娇小| 国产精品va在线| 久久影视三级福利片| 亚洲男子天堂网| 91视频国产一区| 欧美色视频日本版| 国产精品成人观看视频国产奇米| 日韩电影中文字幕在线观看| 69视频在线免费观看| 国产欧美精品日韩| 久久精品国产一区二区三区| 亚洲永久免费观看| 91色中文字幕| 久久精彩免费视频| 日日摸夜夜添一区| 国产黑人绿帽在线第一区| 久久久久久噜噜噜久久久精品| 国产精品一区二区在线| 久久九九全国免费精品观看| 国产精品偷伦一区二区| 欧美夜福利tv在线| 亚洲淫片在线视频| 色偷偷av亚洲男人的天堂| 国产裸体写真av一区二区| 成人妇女免费播放久久久| 亚洲美女av在线播放| 欧美性色19p| 国产欧美最新羞羞视频在线观看| 另类天堂视频在线观看| 日韩一区二区av| 精品国产一区二区三区久久狼黑人| 国内精品久久久久影院 日本资源| 久久精品成人欧美大片| 亚洲第一区中文字幕| 一区二区三区www| 在线观看精品国产视频| 日韩高清有码在线| 亚洲欧洲成视频免费观看| 久久久国产一区| 亚洲欧美一区二区三区久久| 亚洲影视中文字幕| 国产精品成久久久久三级| 欧美小视频在线观看| 久久久精品网站| 日韩精品小视频| 亚洲国产毛片完整版| 色视频www在线播放国产成人| 97精品免费视频| 久久97精品久久久久久久不卡| 91av国产在线| 国产精品v片在线观看不卡| 国产脚交av在线一区二区| 国产精品h在线观看| 日韩精品亚洲精品| 久久精品国产成人| 国产精品夜间视频香蕉| 亚洲欧美激情精品一区二区| 亚洲国产成人精品久久| 国产99视频精品免视看7| 亚洲精品在线91| 不卡中文字幕av| 久久精品欧美视频| 国产美女精品视频| 国产精品69久久| 尤物99国产成人精品视频| 91av视频在线| 国产中文字幕91| 欧美激情一区二区三区高清视频| 一级做a爰片久久毛片美女图片| 欧美老妇交乱视频| 欧美大肥婆大肥bbbbb| 中文字幕亚洲图片| 久久精品最新地址| 欧美精品videofree1080p| 日韩在线观看网址| 亚洲性无码av在线| 国产视频欧美视频| 中文字幕日韩专区| 欧美日韩国产丝袜另类| 亚洲成人激情图| 亚洲成avwww人| 亚洲桃花岛网站| 日本欧美国产在线| 国产精品主播视频| 国内精品久久久久伊人av| 亚洲成色www8888| 日韩成人性视频| 欧美性猛交xxxx偷拍洗澡| 欧美激情二区三区| 欧美视频在线观看免费| 秋霞午夜一区二区| 日韩女优人人人人射在线视频| 97人人模人人爽人人喊中文字| 精品国产一区二区三区久久久| 国产精品69久久久久| 成人在线观看视频网站| 色综合亚洲精品激情狠狠| 668精品在线视频| 日韩av片免费在线观看| 国产精品自产拍在线观看| 欧美精品在线免费观看| 精品国产一区二区三区久久狼5月| 亚洲黄一区二区| 欧美黄色片视频| 国产精品久久久久久久久影视| 日韩视频欧美视频| 精品亚洲一区二区三区| 欧美亚洲成人精品| 亚洲福利视频久久| 91九色视频导航| 久热精品视频在线免费观看| 国产精品久久电影观看| 亚洲激情 国产|