Electron Pit

2017-04-20

UpgradeE 的坑

Electron 的坑

const platform = process.platform;
function killTask() {
  try {
    if (platform === 'win32') {
      for (let pid of pids) {
        childProcess.exec('taskkill /pid ' + pid + ' /T /F');
      }
      pids = [];
    } else {
      for (let pid of pids) {
        process.kill(processServices.pid);
      }
      pids = [];
    }
  } catch (e) {
    showInfo('pid not found');
  }
  clearInterval(timerId);
}

Node 的坑

declare function require(name: string);
declare var Vue: any;

原来的我实在是太傻吊了

this 的使用方法其实是 Function 对象在创建的时候自动调用了 Function.call(<this position>),其实在写 function X 的时候我们自动将 this 指向当前的运行环境,比如说某一个class或者整个全局。在使用箭头函数的时候,this 的位置和当前的运行环境相同,比如。

function a() {
  this.d = 1;
  function b(){
    this.f = 2;
    function c(){
      this.g = 3;
    }
  }
}

比如说在当前情况下,函数 cthis 状况就是 b 的位置。也就是说其实这段代码可以改写成:

function a() {
  this.d = 1;
  function b(){
    this.f = 2;
    function c(){
      b.g = 3;
    }
  }
}

与这个不同的是如果 c 是一个箭头函数:

function a() {
  this.d = 1;
  function b(){
    this.f = 2;
    let c = ()=>{
      this.g = 3;
    }
  }
}

函数 cthisbthis 指向的位置是一样的,那么其实我们的 this.g = 3; 改变的是函数 ag 键值。

Vue 的坑

API 的坑

Go Back

随便看看 :D