Import 网页包找不到Typescript导入的keymirror模块
我正在使用Typescript、React和Webpack,并努力导入keymorr模块 我在用电脑 package.jsonImport 网页包找不到Typescript导入的keymirror模块,import,module,typescript,reactjs,webpack,Import,Module,Typescript,Reactjs,Webpack,我正在使用Typescript、React和Webpack,并努力导入keymorr模块 我在用电脑 package.json { "name": "Fun", "version": "1.0.0", "description": "Dear Webpack Gods, please help.", "main": "app.js", "scripts": { "test": "echo \"Error: no test specified\" &&
{
"name": "Fun",
"version": "1.0.0",
"description": "Dear Webpack Gods, please help.",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "",
"dependencies": {
"eventemitter3": "^1.1.1",
"flux": "^2.0.3",
"keymirror": "^0.1.1",
"react": "^0.13.3",
"ts-loader": "^0.5.0",
"typescript": "^1.6.0-dev.20150812"
},
"devDependencies": {
"css-loader": "^0.16.0",
"style-loader": "^0.12.3"
}
}
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"jsx": "react",
"sourceMap": true
},
"files": [
"./typings/tsd.d.ts",
"./App/app.tsx"
]
}
declare module 'keymirror' {
function keyMirror(obj: Object);
export = keyMirror;
}
webpack.config.js
module.exports = {
entry: './App/app.tsx',
output: {
filename: 'bundle.js'
},
resolve: {
extensions: ['', '.js', '.tsx', '.ts']
},
module: {
loaders: [
{ test: /\.ts(x?)$/, loader: 'ts-loader' },
{ test: /\.css$/, loader: 'style-loader!css-loader' }
]
}
}
tsconfig.json
{
"name": "Fun",
"version": "1.0.0",
"description": "Dear Webpack Gods, please help.",
"main": "app.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "",
"dependencies": {
"eventemitter3": "^1.1.1",
"flux": "^2.0.3",
"keymirror": "^0.1.1",
"react": "^0.13.3",
"ts-loader": "^0.5.0",
"typescript": "^1.6.0-dev.20150812"
},
"devDependencies": {
"css-loader": "^0.16.0",
"style-loader": "^0.12.3"
}
}
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"jsx": "react",
"sourceMap": true
},
"files": [
"./typings/tsd.d.ts",
"./App/app.tsx"
]
}
declare module 'keymirror' {
function keyMirror(obj: Object);
export = keyMirror;
}
有问题的导入位于./User/Constants.ts中
import keyMirror = require('keymirror');
export = keyMirror({
LOGIN_ATTEMPT: null
});
我已经尝试使用如上所示的,以及尝试从react/lib/keymorr请求它
有什么想法吗
(编辑:是的,我知道这是一个12行模块,我可以直接复制到代码中。)
来自Basarat的溶液(轻微修改)
导入keyMirror=require('keyMirror')
你需要把这件事告诉typescript。基本上是这样的:
declare module 'keymirror' {
var export:any;
export = export;
}
在名为global.d.ts
的文件中
一些医生:谢谢@basarat。稍微修改一下就可以了。如果你不想修改它,你可以把模块转换成typescript,这样它就不会抱怨了