2016-10-11 19 views
1

私はノードに新しいので、サーバサイドコードを書いています。 現在、Typescriptを使ってノードλを書いています。私のプロジェクトの中でそれを使用するためには、私はpackage.jsonファイルにリストするためにtypescriptモジュールを依存関係にする必要があり、それらはnpm installでインストールされています。次に、私はnpm testを実行し、このエラーログを受け取ります。ノードラムダ:ts-nodeのインポートがTypeErrorになる

LT-2012011001:example-data-sync amohnacs$ npm test 

> [email protected] test /Users/amohnacs/Developer/git/example-data-sync 
> nyc ./node_modules/.bin/jasmine-ts ./spec/**/*.spec.ts 


/Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:313 
     throw new TypeError(
      ^
TypeError: Unable to require `.d.ts` file. 
This is usually the result of a faulty configuration or import. Make sure there is a `.js`, `.json` or another executable extension and loader (attached before `ts-node`) available alongside  `/Users/amohnacs/Developer/git/example-data-sync/node_modules/any-promise/implementation.d.ts`. 
at getOutput (/Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:313:17) 
at /Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:334:18 
at Object.compile (/Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:462:19) 
at Object.m._compile (/Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:392:44) 
at Module._extensions..js (module.js:550:10) 
at Object.require.extensions.(anonymous function) [as .ts] (/Users/amohnacs/Developer/git/example-data-sync/node_modules/ts-node/src/index.ts:395:12) 
at NYC._readTranspiledSource (/Users/amohnacs/Developer/git/example-data-sync/node_modules/nyc/index.js:150:26) 
at NYC.addFile (/Users/amohnacs/Developer/git/example-data-sync/node_modules/nyc/index.js:134:21) 
at /Users/amohnacs/Developer/git/example-data-sync/node_modules/nyc/index.js:166:11 
at /Users/amohnacs/Developer/git/example-data-sync/node_modules/nyc/index.js:231:5 
npm ERR! Test failed. See above for more details. 

は、ここに私がpackage.json

{ 
    "name": "example-data-sync", 
    "version": "1.0.0", 
    "description": "An example project using the serverless framework for a lambda that subscribes to kinesis events.", 
    "main": "index.js", 
    "scripts": { 
    "postinstall": "./node_modules/.bin/tsd install && ./node_modules/.bin/tsd link", 
    "sls:init": "./node_modules/.bin/sls project init -c", 
    "test": "./node_modules/.bin/nyc ./node_modules/.bin/jasmine-ts ./spec/**/*.spec.ts", 
    "dp:dev:meta": "sls meta sync -s dev -r us-east-1", 
    "dp:dev:cf": "sls resources deploy -s dev -r us-east-1" 
    }, 
    "repository": { 
    "type": "git", 
    "url": "git+https://gitlab.com/danteinc-sandbox/example-data-sync.git" 
    }, 
    "keywords": [ 
    "kinesis", 
    "event", 
    "stream" 
    ], 
    "author": "John Gilbert <[email protected]> (danteinc.com)", 
    "private": true, 
    "license": "SEE LICENSE IN LICENSE.md", 
    "bugs": { 
    "url": "https://gitlab.com/danteinc-sandbox/example-data-sync/issues" 
    }, 
    "homepage": "https://gitlab.com/danteinc-sandbox/example-data-sync#README", 
    "devDependencies": { 
    "aws-sdk": "^2.6.1", 
    "jasmine-console-reporter": "^1.2.7", 
    "jasmine-ts": "0.0.3", 
    "nyc": "^8.1.0", 
    "serverless": "^0.5.0", 
    "serverless-meta-sync": "^0.1.0", 
    "ts-node": "^1.3.0", 
    "tsd": "^0.6.5", 
    "typescript": "^1.8.10" 
    }, 
    "dependencies": { 
    "bluebird": "^3.3.5", 
    "dante-commons-lambda": "^0.X.0", 
    "debug": "^2.2.0", 
    "highland": "^2.5.1", 
    "lodash": "^3.10.1", 
    "moment": "^2.12.0" 
    }, 
    "nyc": { 
    "lines": 95, 
    "statements": 95, 
    "functions": 95, 
    "branches": 95, 
    "include": [ 
     "src/**/*.ts" 
    ], 
    "exclude": [ 
     "spec/**/*.spec.ts", 
     "typings" 
    ], 
    "extension": [ 
     ".ts" 
    ], 
    "require": [ 
     "ts-node/register" 
    ], 
    "reporter": [ 
     "json", 
     "html", 
     "text-summary" 
    ], 
    "cache": false, 
    "check-coverage": true, 
    "all": true 
    } 
} 

中に私のプロジェクトが正しく設定されていることを私に言ったがts-nodeに間違って起こっている何かを介するように見えるのパスを次のようです。プロジェクトの構成に欠けているか間違っているものがあるのでしょうか、あるいはおそらくts-nodeまたはTypescriptのバージョンが間違っていますか?

ありがとうございます。

答えて

0

はあなたpackage.jsonnyc.excludeセクションでnode_modulesを追加します。

"nyc": { 
    "exclude": [ 
    "spec/**/*.spec.ts", 
    "typings", 
    "node_modules" 
    ], 
関連する問題