webpack简单配置
来源:互联网 发布:mysql 数据文件 编辑:程序博客网 时间:2024/06/05 20:32
1、下载相关依赖包
'use strict';var webpack = require('webpack');var path = require('path');var ExtractTextPlugin = require('extract-text-webpack-plugin');var dts = require('dts-bundle');var rimraf = require('rimraf');var GenerateJsonPlugin = require('generate-json-webpack-plugin');var packageJson = require('./package.json');var fs = require('fs');var CopyWebpackPlugin = require('copy-webpack-plugin');var configs = require('./config');module.exports = function(options) { var packagePath = './'+options.buildType+'/'; var extractCSS = new ExtractTextPlugin({ filename: packagePath + 'surveyeditor.css' }); var config = { entry: { 'surveyeditor': path.resolve(__dirname, './src/entries/index.ts') }, resolve: { extensions: ['.js', '.ts', '.tsx', '.scss'], alias: { tslib: path.join(__dirname, './src/entries/helpers.ts') } }, module: { loaders: [ { test: /\.css$/, loader: ExtractTextPlugin.extract({ fallbackLoader: 'style', loader: 'css', publicPath: '../' }) }, ], rules: [ { test: /\.(ts|tsx)$/, loader: 'ts-loader', options: { compilerOptions: { 'declaration': options.buildType === 'test', 'outDir': packagePath + 'typings/' } } }, { test: /\.scss$/, loader: extractCSS.extract({ fallbackLoader: 'style-loader', loader: 'css-loader!sass-loader' }) }, { test: /\.html$/, loader: 'html-loader' }, { test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, use: { loader: 'url-loader', options: {} } } ] }, output: { filename: packagePath +'js/'+'[name].js', library: 'SurveyEditor', libraryTarget: 'umd', umdNamedDefine: true }, externals: { 'jquery': { root: 'jQuery', commonjs2: 'jquery', commonjs: 'jquery', amd: 'jquery' }, 'knockout': { root: 'ko', commonjs2: 'knockout', commonjs: 'knockout', amd: 'knockout' }, 'bootstrap': { root: 'bootstrap', commonjs2: 'bootstrap', commonjs: 'bootstrap', amd: 'bootstrap' }, 'survey-knockout': { root: 'Survey', commonjs2: 'survey-knockout', commonjs: 'survey-knockout', amd: 'survey-knockout' } }, plugins: [ //复制 new CopyWebpackPlugin([ { from: './src/pages', to:packagePath }, ], { ignore: [], copyUnmodified: true, }), extractCSS ], // 配置 webpack-dev-server devServer:{ contentBase:packagePath, historyApiFallback: true, inline: true, port: configs.dev.port // 修改端口,一般默认是8080 }, devtool: 'inline-source-map' }; config.plugins = config.plugins.concat([ new webpack.LoaderOptionsPlugin({ debug: true}) ]); return config;};
在package.json中添加以下代码:
"scripts": { "build_dev": "webpack --env.buildType dev", "build_test": "webpack --env.buildType test", "build_prod": "webpack --env.buildType prod", "start": "webpack-dev-server --no-inline --hot --env.buildType dev" }
根据选择打包环境执行不同的命令
npm run build_test //执行测试环境上的打包
阅读全文
0 0
- webpack简单的配置
- webpack简单配置
- webpack 浅析 webpack.config.js 文件的简单配置
- webpack的简单配置vue项目
- webpack配置
- webpack配置
- webpack 配置
- webpack配置
- webpack配置
- webpack 配置
- webpack配置
- webpack配置
- Webpack配置
- webpack配置
- webpack+vue + express (hot) 热启动调试简单配置
- webpack 1.x构建react项目简单配置
- webpack--简单入门(1)
- webpack--简单入门(2)
- UGUI
- vue
- 深入理解bootloader_1----- bootloader的初步概念
- 重建二叉树:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。
- 如何看待 Kotlin 成为 Android 官方支持开发语言?
- webpack简单配置
- pycharm安装包
- 常用的数据类型范围
- 网络判断——没网点击进入设置(ConnectivityManager)
- JAVA设计模式一单例模式
- 【java】nginx的5个特点
- Sass安装
- 标准W3C盒子模型和IE盒子模型
- C++实现简单二叉树