1

Webpack 2 で次の構文を使用しようとしています。

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

しかし、私はエラーが発生しています:

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

私は何を間違っていますか?! js モジュールを Webpack 2 にインポートするにはどうすればよいですか?

完全を期すために、プロジェクトを可能な限り最小の例に要約し、以下のファイルを提供します。

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));
}

パッケージ.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と、同じエラーが表示されるはずです。

これを機能させるための簡単なものがありませんか?

4

1 に答える 1