2

我正在尝试为mapbox-gl-draw项目创建一个类型化的定义。但失败了。有人可以提供一些提示吗?mapbox-gl-draw的Typescript定义d.ts

JavaScript文件是这样

'use strict'; 

var Setup = require('./src/setup'); 
var Options = require('./src/options'); 
var API = require('./src/api'); 
const Constants = require('./src/constants'); 

var Draw = function(options) { 
    options = Options(options); 

    var ctx = { 
    options: options 
    }; 

    var api = API(ctx); 
    ctx.api = api; 

    var setup = Setup(ctx); 
    api.addTo = setup.addTo; 
    api.remove = setup.remove; 
    api.types = Constants.types; 
    api.options = options; 

    return api; 
}; 

module.exports = Draw; 

window.mapboxgl = window.mapboxgl || {}; 
window.mapboxgl.Draw = Draw; 

我index.d.ts就像

declare namespace mapboxgl { 
    export function Draw(options?:any):any 

} 
declare module 'mapbox-gl-draw' { 
    export = mapboxgl; 
} 

回答

0

对于此javascript:

var map = new mapboxgl.Map({ 
    container: 'map', 
    style: 'mapbox://styles/mapbox/streets-v8', 
    center: [40, -74.50], 
    zoom: 9 
}); 

例如,您可以创建的MapOptions:

interface MapOptions { 
container?: string; 
style?: string, 
center?: number[]; 
zoom?: number; 
} 


declare module "mapbox-gl-draw" { 

} 
相关问题