溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在JavaScript中使用回調函數

發布時間:2021-03-31 17:08:25 來源:億速云 閱讀:158 作者:Leah 欄目:web開發

本篇文章為大家展示了怎么在JavaScript中使用回調函數,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

作用:

js代碼會至上而下一條線執行下去,但是有時候我們需要等到一個操作結束之后再進行下一個操作,這時候就需要用到回調函數。

基本案例:

<script language="javascript" type="text/javascript">
function doSomething(callback) {
  // 調用回調函數
  callback('我', '網名', '葉落森');
}
function foo(a, b, c) {
  //這是回調函數
  alert(a + " " + b + " " + c);
}
doSomething(foo);
</script>

項目中的案例:

vue項目中假設store中this指向沒指向到vue,那么就可以用回調函數來實現它的iview的this.$Message效果。(當然這是很傻的。this指向沒指向到vue,我們可以把vue引進store后,再new Vue()就行。import Vue from 'vue'      var vuethis=new Vue())

a.js

import {mapActions, mapGetters} from 'vuex';
export default {
  name: 'role',
  data () {
    return {

    };
  },
  computed: {},
  methods: {
    ...mapActions(['getRoleData', 'getPowerData']),
      callbackFn(type,content){//這是回調函數
        if(type){
          this.$Message.success(content)
        }else{
          this.$Message.error({
            content: content,
            duration: 5
          })
        }
      },
      initRoleId () {
         this.getRoleData({path:'http://www.baidu.com/',callbackFn:this.callbackFn});
      }
  },
  mounted(){
    this.initRoleId();
  }
};

store中的js

actions: {
    getRoleData ({commit}, {path,callbackFn}) {
      axios.get(path + 'roles', {params: {pageSize: 500}}).then(res => {
        if(res.data.retCode=="200"){
          commit('ROLE_DATA', {roleData: res.data.data.records});
        }else{
          callbackFn(0,res.data.message)//調用回調函數
        }
      });
    },
}

上述內容就是怎么在JavaScript中使用回調函數,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女