是否应该将函数的接口类型以及参数和返回类型一起使用?

时间:2018-11-24 07:09:34

标签: typescript

这是一个可用作Geolocation API位置回调的函数:

<script src="https://unpkg.com/vue"></script>

<div id="test">
<h1>{{ sayHi }}</h1>

<select v-model="selected">
   <option v-for="person in persons" v-bind:value="person">
   {{ person.lname }}
   </option>
</select>
<p> {{ selected.about }} </p>
</div>

有了那个const showPosition: PositionCallback = (position: Position): void => console.log(position); ,我想知道是否应该删除参数并返回类型。

2 个答案:

答案 0 :(得分:1)

由于definition of PositionCallback指定了类型,因此它们是多余的,因此可以保证TypeScript在分配的右侧推断它们。

答案 1 :(得分:1)

这是风格问题。可以推断出类型,因此编译器会很高兴。

保持PositionCallback类型为显式的优点是,如果将来更改类型,则编译器将在需要更正类型的所有点上引发错误。没有它,除非将showPosition传递给需要PositionCallback的东西,否则不会出错,因此可能需要更长的时间来修复代码。