【发布时间】:2016-06-08 13:42:58
【问题描述】:
我在创建“简单”npm 模块的打字稿定义文件时遇到问题。
以下是详细信息:
问题:当我编译打字稿时,它得到以下错误:
play.ts(1,9): error TS2305: Module '"/to/the/dir/node_modules/geojson/geojson"' has no exported member 'GeoJSON'.
模块:geojson (https://www.npmjs.com/package/geojson)。 该包只有一个公共功能。它在文件 geojson.js 中:
(function(GeoJSON) {
GeoJSON.version = '0.3.0';
GeoJSON.defaults = {};
// The one and only public function.
// Converts an array of objects into a GeoJSON feature collection
GeoJSON.parse = function(objects, params, callback) {
...
...
...
(typeof module == 'object' ? module.exports : window.GeoJSON = {}));
package.json 包含
"main": "./geojson",
"name": "geojson",
//// I ADDED THIS TYPE DEF FILE
"typings": "./geojson.d.ts",
我从这里收集
- 模块名称:geojson
- 解析:签名是解析(对象:任意,参数:任意,回调?:任意):任意;
- GeoJSON 是一个接口?
我的定义文件是:geojson.d.ts
export declare module geojson {
interface GeoJSON {
parse(objects: any, params: any, callback?: any): any;
}
}
我的 tsconfig 文件是:
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
}
}
我正在尝试导入(我已经尝试了 1000 种方法..)这里有一些:
import GeoJSON from 'geojson';
import geojson from 'geojson';
import {geojson} from geojson;
import geojson = require('geojson');
import GeoJSON = require('geojson');
我做错了什么?
【问题讨论】:
标签: typescript angular