2016-10-22 4 views
0

にJSファイルからモジュールをインポート:私はWebPACKの2で、次の構文を使用しようとしていますWebPACKの2

import someSvc = require("./some.svc.js"); 

をしかし、私はエラーを取得しています:私は間違って

error TS2307: Cannot find module './some.svc.js'. 

何をしているのですか? ! Webpack 2でjsモジュールをインポートするにはどうすればいいですか?

徹底のために、私は最も小さい可能な例まで私のプロジェクトを煮沸し、以下のファイルを提供します:

webpack.config.js

var path = require('path'); 

module.exports = function makeWebpackConfig() { 
    var config = {}; 
    config.entry = { 'app': './src/main.ts' }; 
    config.output = { 
    path: root('dist'), 
    filename: 'js/[name].js' 
    }; 
    config.module = { 
    rules: [ 
     { 
     test: /\.ts$/, 
     loaders: ['ts-loader'] 
     } 
    ] 
    }; 
    return config; 
}(); 

// Helper functions 
function root(args) { 
    args = Array.prototype.slice.call(arguments, 0); 
    return path.join.apply(path, [__dirname].concat(args)); 
} 

package.json

{ 
    "name": "webpack", 
    "version": "1.0.0", 
    "description": "", 
    "main": "src/main.ts", 
    "dependencies": {}, 
    "devDependencies": { 
    "ts-loader": "^0.9.5", 
    "typescript": "^2.0.3" 
    }, 
    "scripts": {}, 
    "author": "", 
    "license": "ISC" 
} 

tsconfig.js

{ 
    "compilerOptions": { 
    "target": "ES5", 
    "module": "commonjs", 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "sourceMap": true, 
    "noEmitHelpers": true 
    }, 
    "compileOnSave": false, 
    "buildOnSave": false, 
    "exclude": [ 
    "node_modules" 
    ] 
} 

のsrc/main.ts

import someSvc = require("./some.svc.js"); 

のsrc/some.svc.js

if (typeof module !== 'undefined' && module.exports) { 
    module.exports.config = function (conf) { 
     return { abc: 123 }; 
    }; 
} 

、一緒にこれらのファイルをスティックwebpackを実行すると、あなたは、同じエラーが表示されるはずです。

私はこれを簡単にするための何かが欠けていますか?

答えて

2

いつものようにこれと苦労して、いつものようにSOのポストが何とか私の脳などを引き起こしました。

SystemJsからWebpackになると、私はrequireがまったく変更されることを期待していませんでした。

それにもかかわらず、私はこれを2つの変更で修正しました。

このライン:

import someSvc = require("./some.svc.js");

は次のようになります。

var someSvc = require("./some.svc.js");

と(私は活字体2.0を使用しています)、これを実行している:

npm install @types/node --save-dev

関連する問題