webpack配置备份
package.json:
{
"name": "leyi",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"clean": "rimraf ./dist && mkdir dist",
"build:dll": "npm run clean && webpack --config ./webpack.dll.config.js",
"build": "webpack && webpack-dev-server --inline"
},
"devDependencies": {
"art-dialog": "^7.0.0",
"assets-webpack-plugin": "^3.5.1",
"babel-core": "^6.25.0",
"babel-loader": "^7.0.0",
"babel-polyfill": "^6.23.0",
"babel-preset-env": "^1.5.2",
"babel-preset-es2015": "^6.24.1",
"css-loader": "^0.28.3",
"eslint": "^4.1.0",
"extract-text-webpack-plugin": "^2.1.0",
"file-loader": "^0.11.2",
"html-webpack-plugin": "^2.28.0",
"mockjs": "^1.0.0",
"style-loader": "^0.18.1",
"url-loader": "^0.5.8",
"webpack": "^2.6.1",
"webpack-dev-server": "2.1.0-beta.10"
},
"dependencies": {
"d3": "^4.9.1",
"jquery": "^1.11.3",
"save-svg-as-png": "^1.2.0",
"simple-undo": "^1.0.1",
"underscore": "^1.8.3"
}
}
webapck.dll.config.js:
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: {
dll: ['babel-polyfill','d3', 'jquery','save-svg-as-png','art-dialog']
},
output: {
path:path.join(__dirname,'./dist/js'),
filename: '[name].bundle.js',/* output.library 将会定义为 window.${output.library} */
library: '[name]'
},
plugins: [
new webpack.optimize.UglifyJsPlugin({
compress: {
warnings: false
}
}),
new webpack.DllPlugin({ /*path 定义 manifest文件生成的位置 [name]的部分由entry的名字替换*/
path: path.join(__dirname, '[name]-manifest.json'),
name: '[name]'/*name dll bundle输出到那个全局变量上和 output.library 一样即可*/
})
]
};
webapck.config.js:
'use strict';
var path=require('path');
var webpack =require('webpack');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var uglifyJsPlugin = webpack.optimize.UglifyJsPlugin;
var HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports={
context:path.join(__dirname,'./src'),
entry:{
"home":'./pages/home/js/index.js'
},
output:{
path:path.join(__dirname,'./dist'),
filename:'js/[name].bundle.js'
},
module:{
rules: [
{
test: /\.js$/,
exclude: /(node_modules|bower_components)/,
use: {
loader: 'babel-loader'
}
},
{
test: /\.css$/,
use: ExtractTextPlugin.extract({
fallback: "style-loader",
use: "css-loader"
})
},
{ test: /\.(gif|jpg|png|woff|svg|eot|ttf)\??.*$/,
loader: 'url-loader?limit=8192&name=images/[hash:8].[name].[ext]'
}
]
},
plugins: [
new webpack.DllReferencePlugin({
context: __dirname,
manifest: require('./dll-manifest.json'),
name: "dll"
}),
new webpack.ProvidePlugin({ //全局化变量
//当webpack碰到require的第三方库中出现全局的$、jQeury和window.jQuery时,就会使用node_module下jquery包export出来的东西
$: "jquery",
jQuery: "jquery",
"window.jQuery": "jquery",
"d3":"d3",
"_":"underscore",
"dialog":"art-dialog",
"svg2Png":"save-svg-as-png"
}),
new ExtractTextPlugin("css/style.css"),//单独使用link标签加载css并设置路径,相对于output配置中的publickPath
new webpack.HotModuleReplacementPlugin(), //热加载
/* new webpack.optimize.CommonsChunkPlugin({
name: "common",// 将公共模块提取,生成名为`common`的chunk
chunks:["home"],//提取哪些模块共有的部分,默认所有
//filename: "js/common.js",
//minChunks: 2 // 提取至少2个模块共有的部分
}),*/
//压缩代码 编译的速度会变慢,生产时用
/* new uglifyJsPlugin({
compress: {
warnings: false,
drop_console: true //删除console
}
}),*/
new HtmlWebpackPlugin({
title:'page1',//用来生成页面的 title 元素
template:"pages/home/home.html",//自定义的html页(默认支持ejs模板),如果不指定模板,会生成最基本的html结构
filename:'home.html',//输出的 HTML 文件名,默认是 index.html, 也可以直接配置带有子目录。
hash:true,//生成hash,对于解除 cache 很有用
inject:'body',//script资源插入模板的位置| 'head' | 'body' |
chunks: ['home']//需要引入的chunk,不配置就会引入所有页面的资源
})
],
devServer:{
contentBase:path.join(__dirname,'./dist'),
host: 'localhost',
progress:true,//显示进度
port: 3000, //默认8080
inline: true,
hot: true//热启动
}
};
webpack配置备份的更多相关文章
- [webpack] 配置react+es6开发环境
写在前面 每次开新项目都要重新安装需要的包,简单记录一下. 以下仅包含最简单的功能: 编译react 编译es6 打包src中入口文件index.js至dist webpack配置react+es6开 ...
- webpack配置详解
webpack配置详解 先点个赞吧,再挨个点下面的连接,觉得不值这个赞的回来骂我啊. Webpack傻瓜式指南(一) Webpack傻瓜指南(二)开发和部署技巧 Webpack傻瓜式指南 原生的官网详 ...
- Webpack配置示例和详细说明
/* * 请使用最新版本nodejs * 默认配置,是按生产环境的要求设置,也就是使用 webpack -p 命令就可以生成正式上线版本. * 也可以使用 webpack -d -w 命令,生成用于开 ...
- vue-cli#2.0 webpack 配置分析
目录结构: ├── README.md ├── build │ ├── build.js │ ├── check-versions.js │ ├── dev-client.js │ ├── dev-s ...
- iis7、iis8配置备份还原
原文 iis7.iis8配置备份还原 方法1: 1.打开我们的IIS管理器,在功能视图里找到“共享的配置”这个功能然后双击进入. 2.进入“共享的配置”后单机右上方的“导出配置”选项,选择导出配置文件 ...
- webpack配置这一篇就够
最近看了一篇好文,根据这个文章重新梳理了一遍webpack打包过程,以前的一些问题也都清楚了,在这里分享一下,同时自己也做了一些小的调整 原文链接:http://www.jianshu.com/p/4 ...
- gitlab一键安装+配置(备份+LADP认证)
gitlab一键安装+配置(备份+LADP认证) #gitlab一键安装 #centos6 mini, GitLab社区版 #参考官方最新文档 https://www.gitlab.com.cn/in ...
- webpack配置报错:invalid configuration object.webpack has been initialisted using a configuration objcet that does not match thie API schema
最近接收了别人的项目,webpack配置总是报错如下:最后找到了解决办法,在此分享一下: 错误情况: 解决办法: 将package.json里面的colors删除掉即可
- 前端工程化(二)---webpack配置
导航 前端工程化(一)---工程基础目录搭建 前端工程化(二)---webpack配置 前端工程化(三)---Vue的开发模式 前端工程化(四)---helloWord 继续上一遍的配置,本节主要记录 ...
随机推荐
- css之position相对定位和绝对定位
一.position的四个值:static.relative.absolute.fixed. 绝对定位:absolute和fixed统称为绝对定位 相对定位:relative 默认值:static 二 ...
- AWS CloudFormation Template
{ "AWSTemplateFormatVersion" : "2010-09-09", "Parameters" : { "Ba ...
- LINUX 下Open cv练习使用小记(1)
首先肯定离不开选一张自己喜欢的图像来显示 #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp ...
- Spark之SQL解析(源码阅读十)
如何能更好的运用与监控sparkSQL?或许我们改更深层次的了解它深层次的原理是什么.之前总结的已经写了传统数据库与Spark的sql解析之间的差别.那么我们下来直切主题~ 如今的Spark已经支持多 ...
- Spark BlockManager的通信及内存占用分析(源码阅读九)
之前阅读也有总结过Block的RPC服务是通过NettyBlockRpcServer提供打开,即下载Block文件的功能.然后在启动jbo的时候由Driver上的BlockManagerMaster对 ...
- mount不是很熟悉 转载文章了解下 转自http://forum.ubuntu.org.cn/viewtopic.php?f=120&t=257333
纯粹针对刚刚解封开包的新新手,老鸟们请自觉绕行,否则浪费你的时间你非要逼我做谋杀犯可不光我的事你还没地方说理去.如果你正好是个崭新的新手,就耐心的花点时间看看吧,至少大概看看,不要在一个陌生又黑暗的到 ...
- javascript匿名函数应用
1.给指定对象新增一些属性的写法: /*给一个对象增加属性*/ var myDate=(function(obj){ obj.addName=function(name){ this.name=nam ...
- Google Font字体本地化使用提高网站访问速度
Google Web font在国内经常不稳定,速度在国内延迟也很高,而引发网页打开速度慢. 一.常见的字体格式介绍 不同的浏览器对字体格式支持是不一致的,常见的如下: 1.TureTpe(.ttf) ...
- hibernate配置文件hibernate.cfg.xml的详细解释
<!--标准的XML文件的起始行,version='1.0'表明XML的版本,encoding='gb2312'表明XML文件的编码方式--> <?x ...
- Sublime Text
今天在网上找了个Sublime Text 3 Build 3065 的 license key .在最新的Build 3083 下可以使用,记录下. ----- BEGIN LICENSE ----- ...