hanbaoshan
2020-08-05 a51a787a5ecb7d249dba434be74160c85516c555
src/pages/desktop/index/store/modules/desktop.js
@@ -15,7 +15,7 @@
    isShow: true,
    url: '',
    title: 'safari',
    icon: 'images/safari.png',
    icon: '/images/desktop/safari.png',
    order: 0,
    leftOffset: 8,
    topOffset: 8
@@ -25,7 +25,11 @@
};
// getters
const getters = {};
const getters = {
  frames(state) {
    return state.frames;
  }
};
// actions
const actions = {
@@ -73,7 +77,7 @@
  addFrame: (state, dframe) => {
    let ids = state.frames.map(item => item.id);
    if (ids.indexOf(dframe.id) > -1) {
      return;
      return false;
    }
    let order = state.framesOrder + 1;
@@ -95,23 +99,42 @@
    state.framesOrder = order;
    state.framesOffset = offset;
    state.frames.push(dframe);
    return true;
  },
  addMinDock: (state, dock) => {
    debugger
    let ids = state.minDocks.map(item => item.id);
    if (ids.indexOf(dock.id) > -1) {
      //已经在mindock里
      let curFrame = state.frames.find(frame => frame.id == dock.id);
      curFrame.isShow = false;
      let minOne = state.minDocks.find(one => one.id == dock.id);
      minOne.highlight = false;
      //找到minDocks最近打开的状态isShow为true的dock置为高亮
      let minLen = state.minDocks.length;
      for(var i = minLen-1; i >= 0; i--){
        debugger
        let temp =  state.frames.find(frame=>frame.id == state.minDocks[i].id);
        if(temp.isShow){
          state.minDocks[i].highlight = true;
          return;
        }
      }
      return;
    }
    state.frames.find(function (it) {
      if (it.id === dock.id) {
        it.isShow = false;
        return true;
      }
      return false;
    });
    // state.frames.find(function (it) {
    //   if (it.id === dock.id) {
    //     it.isShow = false;
    //     return true;
    //   }
    //   return false;
    // });
    debugger
    state.minDocks.push(dock);
    if (dock.id === 'safari') {
      state.safari.isShow = false;
    }
  },
  addMessageNotice: (state, msg) => {
    let ids = state.messageNotices.map(item => item.id);
@@ -157,18 +180,27 @@
    state.safari.isShow = true;
  },
  refreshFrame: (state, item) => {
    debugger
    state.frames.forEach(function (it) {
      debugger
      if (it.id === item.id) {
        it.order = 1;
        state.minDocks.forEach((min,index)=>{
          debugger
          if(min.id == it.id){
            debugger
            min.highlight = true;
          }else{
            min.highlight = false;
          }
        })
      } else {
        it.order = 0;
      }
    });
    if (item.id === 'safari') {
      state.safari.order = 1;
    } else {
      state.safari.order = 0;
    }
  },
  refreshTime: (state) => {
    state.currentDate = new Date();
@@ -177,20 +209,13 @@
    state.frames.find(function (it) {
      if (it.id === id) {
        it.isShow = true;
        return true;
      }
      return false;
    });
    state.minDocks.find(function (it, idx) {
      if (it.id === id) {
        state.minDocks.splice(idx, 1);
        return true;
      }
      return false;
    });
    if (id === 'safari') {
      state.safari.isShow = true;
    }
  },
  removeMessageById: (state, id) => {
    state.messageNotices.find(function (item, idx) {