我不能讓周圍的Webstorm IDE以下打字稿錯誤消息,我的頭(很新的打字稿很抱歉...)打字稿:參數類型函數是不能分配給參數類型功能
我使用從DefinitelyTyped庫d3.d.ts實現圖形與d3js其中用於d3.svg.arc()方法中的接口被定義,如:
export interface Arc {
...
outerRadius: {
(): (data: any, index?: number) => number;
(radius: number): Arc;
(radius:() => number): Arc;
(radius: (data: any) => number): Arc;
(radius: (data: any, index: number) => number): Arc;
};
...
}
以下面的方式實現電弧時
...
svg.selectAll(".arc")
.attr("d", function (d) {
return d3.svg.arc().outerRadius(
function (d) {
return d - 9;
})
...
我得到的錯誤:「參數類型函數是不能分配給參數類型功能」
所以
function (d) {return d - 9;})
似乎並不有效期爲該接口即便如此看來型
(): (data: any, index?: number) => number;
我猜我負責的東西顯然還沒有......我堅持現在
感謝
這個例子(剝離)適用於我http://www.typescriptlang.org/Playground/ – SLaks
Playground和WebStorm不一定(可能不是)使用相同版本的TypeScript。嘗試顯式輸入傳入outerRadius的函數,看看會發生什麼。 '''outerRadius(function(d:any):number {return d - 9;});''' –