如何在没有webpackJsonp的情况下生成js文件

时间:2016-01-14 20:32:42

标签: javascript webpack webpack-2

我希望webpack处理js文件(minify / uglify)但不要将其格式化为模块 - 所以它只是原始的js文件,只包含初始代码(minified / uglified)而没有任何webpackJsonp。 在webpack加载到浏览器之前,我需要这样一个文件来加载它,以检测是否加载了自定义字体。如果我使用webpack模块执行此操作,则在加载字体文件后加载我的包。

2 个答案:

答案 0 :(得分:0)

在webpack.config.js中将target设置为node(默认为web

module.exports = {
  target: 'node'
};
  

在上面的示例中,使用node webpack将编译以在a中使用   类似Node.js的环境(使用Node.js需要加载块而不是   触摸任何内置模块,如fs或path)。

或者,如果这不适合您的使用,您也可以更改output中的libraryTarget(假设您使用的是CommonJS):

output: {
    path: path.resolve(__dirname, 'build'),
    filename: '[name].js',
    libraryTarget: 'commonjs'
},
  

libraryTarget:“commonjs” - 您的入口点的返回值   使用output.library值分配给exports对象。如   顾名思义,这是在CommonJS环境中使用的。

答案 1 :(得分:0)

你应该有(取决于版本)scripts() 或 babel() 方法,它们只缩小而不是 webpackfy 的 js() :

mix.js('resources/js/app.js', 'public/js/app') //this add a webpack module
    .scripts(['resources/js/scrips/raw.js', 'resources/js/scrips/raw2.js',], 'public/js/raws.js')//this add a minified js
    .babel(['resources/js/scrips/raw3.js', 'resources/js/scrips/raw4.js',], 'public/js/raws_retrocompatible.js')//this add a minified js, but using babel compiler