2013-07-23 86 views
0

我有以下的目录设置:打字稿:tsc.exe --execute:错误无法找到模块

/app/ioc.ts 
/tests/test.ts 

我在测试目录很。的app/ioc.ts内容是不重要的,但tests/test.ts内容是:

import IOC = module('../app/ioc'); 
var container = new IOC.Container(); 

如果我编译这个像这样:

tsc test.ts 

然后像这样运行:

node test 

所有的好!该文件运行没有错误。然而!如果我运行这样的:

tsc -e test.ts 

我得到以下错误:

module.js:340 
    throw err; 
     ^
Error: Cannot find module '../app/ioc' 
    at Function.Module._resolveFilename (module.js:338:15) 
    at Function.Module._load (module.js:280:25) 
    at Module.require (module.js:364:17) 
    at require (module.js:380:17) 
    at Object.<anonymous> (D:/dropbox/work/sandbox/Prototyping/TypeScript/tests/test.js:1:73) 
    at Module._compile (module.js:456:26) 
    at Object.run (C:\Users\nathan\AppData\Roaming\npm\node_modules\typescript\bin\tsc.js:56041:30) 
    at BatchCompiler.run (C:\Users\nathan\AppData\Roaming\npm\node_modules\typescript\bin\tsc.js:56563:29) 
    at BatchCompiler.batchCompile (C:\Users\nathan\AppData\Roaming\npm\node_modules\typescript\bin\tsc.js:56795:26) 
    at Object.<anonymous> (C:\Users\nathan\AppData\Roaming\npm\node_modules\typescript\bin\tsc.js:56908:7) 

任何想法?

回答

1

你的代码没问题。 -e标志正从tsc中删除,部分原因是它不能很好地处理这种情况。在编译器过程的上下文中执行任意JS并不是一个好主意。

+0

啊,罗杰。谢谢。 –