在打字稿中声明空函数

时间:2019-10-25 06:29:50

标签: typescript

我遇到了一个我很难理解的自定义组件中的一段代码。

You should use promises.

function callApi() {
  return new Promise((resolve, reject) => {
    const req = http.request(options, (res) => {
      console.log(`statusCode: ${res.statusCode}`)

      res.on('data', (d) => {
        process.stdout.write(d)
        resolve(JSON.parse(d))
      })
    })

    req.on('error', (error) => {
      reject(error)
    })

    req.write(data);
    req.end();
  })
}

function test() {
  var request = callApi();
  request.then(function result(result) {
    console.log(result)
  }, function error(err) {
    console.log(error)
  })
}

test(); 

public onTouch: () => void = () => {} 函数是通过私有方法设置的

onTouch

我认为第一部分registerOnTouch(fn: any) { this.onTouch = fn; } 声明了一个不带参数且不返回值的函数。但是我很难理解最后一部分public OnTouch: () = void

后面的部分描述了它是否可能是过载?

1 个答案:

答案 0 :(得分:2)

第一部分:

() => void

声明函数onTouch的类型以及第二部分:

= () => {}

声明其默认值。也就是说,如果没有为onTouch分配其他值,则它将是空操作。