我正在使用Visual Studio 2013/TypeScript 1.8.5/NPM/Typings。如何在無模塊環境中使用沒有強名稱的TypeScript定義文件
我想用一些React JSX將TypeScript編譯成ES5代碼,更重要的是,沒有模塊。
一些定義文件類型取得我只有一個名爲模塊的字符串。通過「串命名爲」我的意思是這樣的:
declare module "redux-devtools" {}
當別人有這樣的:
declare namespace Redux {}
declare module "redux" {}
當是我所說的「強名稱」,我可以直接使用這些定義我的碼。
var foobar = Redux;
但是,當只有一個名爲模塊的字符串,我不知道如何使用它們。據我所知,我必須使用一個導入語句,但是當我這樣做時,我會得到一個「不能編譯模塊,除非提供'--module'標誌」,並且我不想在我的目標代碼中使用模塊。
import { createDevTools } from 'redux-devtools';
const DevTools = createDevTools(/**/);
有沒有特定的方法來做到這一點?還是定義文件,如redux-devtools,首先是錯誤的?
編輯:
如果我編譯打字稿到ES6,我不再得到「無法編譯模塊...」的消息時,我引入了外部模塊。打字稿生成報表是這樣,而不是:
const redux_devtools_1 = require('redux-devtools');
我覺得奇怪,因爲「需要()」不是ES6的一部分,這意味着我將不得不使用ES6-墊片+ RequireJS此解決方案的工作?
另外,我有一個大致的「_references.ts」文件,如:
/// <reference path="../typings/browser.d.ts" />