0

次のコードでwebpackを使用しています

var webpack = require("webpack");    
module.exports = [
{
  name: 'libs',
  entry: [   
      'js/jstz.js',
      'js/jstz_min.js'
    ],
  output:{
        filename: "libs.js"
    },  
  resolve: {
      alias: {
        jstz_min: 'jstz_min.js'
      }
  }
},    
{
  name: 'main',
  entry:  [
       'jstzDemo.js'
      ],
  output: {
    filename: "main.js"
  }
}];

jstzDemo.js には、次のコードがあります

 function getTimezoneName() {
        timezone = jstz_min.determine()
        return timezone.name();
    }

index.html には、webpack からの出力ファイルである libs.js と main.js を含めました。

jstz_min からjstz_minをダウンロードしました

ページの読み込み時に問題が発生し、「ReferenceError: jstz_min が定義されていません」というエラーが発生しています。webpack.config.js に変更が必要ですか?

4

1 に答える 1

0

テストされていませんが、設定を次のように変更できます。

var webpack = require("webpack");    
module.exports = [
{
  entry: {
      main: 'jstzDemo.js',
      libs: 'js/jstz_min.js'
  },
  output:{
      filename: "[name].js"
  },
  plugins: [
    new webpack.optimize.CommonsChunkPlugin('libs', 'libs.js')
  ]
}];

jstzDemo.js:

var jstz = require('js/jstz_min.js');

function getTimezoneName() {
    timezone = jstz.determine()
    return timezone.name();
}
于 2016-03-21T08:50:48.630 に答える