UNPKG

7.48 kBMarkdownView Raw
1### 4.1.1
2* 添加css nodules的支持,添加参加cssModules
3* 添加对自定义babel-config的支持,如果项目下有.babelrc或者babel.config.js,就可以覆盖默认配置
4
5
6### 4.0.4
7* 添加extractStyles参数,配置是否抽离样式文件
8
9### 4.0.3
10* 添加define参数用来定义definePlugins中的配置
11* 添加less loader
12
13### 4.0.0-beta.16
14* 添加loose参数,激活所有babel plugins的loose模式
15
16### 4.0.0-beta.16
17* 去掉targetBrowsers参数,统一使用targets来设置
18* 去掉transformExclude参数
19* 添加styles参数,如果没有使用sass测不提醒安装node-sass,这个太费时间
20* 添加projectType参数,描述项目类型,是module还是spa 还是mpa
21
22### 2.2.2
23
24* 在构建生产环境执行uglify的时候,把console.xxx给干掉,避免IE在执行到的时候报错。
25
26## 2.0.4
27
28* 使用awesome-typescript-loader代替ts-loader
29
30* 添加tsbase.json, 做了一些基础ts配置,可以在项目中继承
31
32
33
34## 2.0.3
35
36* 修复bug, 在非devserver模式下,引入extract plugin
37
38## 2.0.2
39
40### file loader在执行prod打包的时候,给资源文件加hash
41
42## 2.0.1
43
44### 3个bug fix
45
46## webpack-config2.0
47
48### 参数变化
49
50* 去掉参数root, 考虑到开发者都是在项目下执行打包,所以使用process.pwd()代替用户指定的 root目录
51* 去掉moduleDirectories参数,
52* 添加moduleScope参数,默认为项目根目录,但常用的是src目录,也可以指定为另外的目录,不允许用户导入moduleScope和node_modules之外的模块
53* 添加language参数,可选参数有js, ts和mixed, 这会直接影响到配置使用到的loader,plugins和支持的extensions,
54* 添加check=on环境变量识别,启用此环境变量,会启用路径检查的插件,以防在mac下开发,写错了大小写导致ci构建不成功的问题
55* useLint, 默认为true, 会根据你选择的language对不同类型的文件进行语法检查
56
57### 功能变化
58* 添加对typescript的支持, 参数language
59* 添加对路径检查的支持, 环境变量check=on
60* 使用严格的用moduleScope, 参数moduleScope
61* 默认alias & 始终指向配置的 moduleScope
62* resolve.modules使用默认值,并且不允许用户配置,因为在前端构建中,不太可能会出现使用项目目录外模块的可能。如果有简化的需求,请使用alias
63* 启用strictExportPresence, 如果import没有对应的export就会报错
64* 默认根据language启用eslint和tslint
65
66
67## 更新
68
69### 更新 9月 21号
70> dev_server环境变量在正常情况下可以不传,程序会根据process.mainModule来判断是否启动了webpack-dev-server, 如果开发者通过其他方式启动了导致无法识别,可以通过传递此环境变量来明确启动了dev_server
71
72### 8 月 23
73
74> 添加useLint 参数,默认为false, 使用的话,会启用对应的tslint和eslint
75
76> 默认moduleScope为应用根目录,并且强制不允许引用scope目录之外的相对模块
77
78> 为了提升构建速度,把src目录从模块查找目录排除,并且不允许添加新的模块目录,如果要简化模块查找,请使用alias.
79
80> 添加language参数, 默认为js, 可选ts, 或者mixed. 根据类型的不同选择不同的loader
81
82### 8 22 号
83
84> 添加case sensitivePlugin
85
86> 添加moduleScope参数,默认为src, 会影响到默认的alias, 和模块导入,如果设置了moduleScope, 测不能从指定目录外的目录导入相对模块
87
88> 取消根据engines来修改extensions的方式,感觉多余
89
90> 考虑到我们都是在项目中启动node工具的,所以root参数不再需要了,
91
92> 打开strictExportPresence, 如果导入没有对应的导出,就会报错
93
94> 开发打包打开了output.pathinfo为true
95
96### 8月 11号
97
98> 添加对typescript的打包支持,
99
100> 添加typescript基础配置
101
102
103### 8月4号
104
105> 添加对vue项目的支持,
106
107> 添加参数 engines, 用来标识项目对框架的支持,可以是react, vue的一个或者多个
108
109### 7月13号
110
111> 默认短路径使用&代替@, 避免与scope冲突
112
113> dev Server默认启用friendly errors plugin, 使用friendly=off关闭
114
115> analyzer_server改为analysis
116
117### 7月12号
118> 重新启用ModuleConcatenationPlugin, 记住一定要设置正确的context
119
120> 更新模块查找目录严格为`path.resolve(appRoot, './src')`和 `path.reslove(appRoot, './node_modules')`, 以防止打包不同版本的同一个库进来。package下的node\_modules不再进行处理。项目管理者需要处理类似这样的依赖问题。
121
122> 设置`path.resolve(appRoot, './src')`的别名为@,当导入./src下的模块时,可以直接使用`import helpers from '@/helpers'`这样的写法
123
124> modules.alias的扩展是会自动进行合并。如果你配置了alias为`alias:{#:'path'}`, 得到的结果是`{@: path.resolve(appRoot, './src'), '#': 'path'}`
125
126> 解决问题:如果设置多个entry的话,必须要在第一个加载的entry的第一个import必须是 `import 'babel-polyfill'`
127
128### 6月29号
129
130> 把`webpack` `webpack-dev-server`放到devDependencies和peerDepencencies中,因为如果放在dependencies中,使用@talentui/webpack-config的包还是需要手动安装webpack和webpack-dev-server,才能在npm scripts中访问到这两个包的可执行文件。
131
132### 6月28号
133
134> 调整babel-loader exclude规则,匹配node\_modules但会忽略 node\_mdoules/@beisen/talent-ui打头的包,这就意味着像@beisen/talent-ui-bootstrap这样的包仍然会通过babel-loader进行转换。目的是为了让import 'babel-polyfill'被babel-preset-env进行处理。将来也可以简化发包的流程
135
136> 更新配置,当不传递targets相关的数据的时候,默认使用`chrome >= 58 `的浏览器支持,但会引入所有的plugins,
137
138> 当`transformInclude` 和 `transformExclude`都设置了相同的插件或者polyfill的时候,`transformExclude`会生效,include失效。
139
140> 在项目的目录中添加了 `data/plugins.json` 和 `data/polyfill.json` 里面列出了所有的可用的plugins和polyfill, 这些内容是给transformInclude和transformExclude使用的配置项
141
142### 6月27号
143
144> 移除配置项browsers,替换为targetBrowsers, 如何设置浏览器列表请查看 [浏览器列表](https://github.com/ai/browserslist)
145
146> 添加配置项targets, 这个配置项是你需要对转换的目标做更详细的配置,这个配置项会覆盖targetBrowsers, 详情请看 [官方文档](https://github.com/babel/babel-preset-env#targets)
147
148> 添加配置项支持transformInclude和transformExclude, 使用Babel对js进行转换的时候,我们使用了[babel-preset-env](https://github.com/babel/babel-preset-env), 它可以根据提供的运行环境[Browsers](https://github.com/babel/babel-preset-env#targetsbrowsers)自动选择引入的plugins, 同时可以对一些内置的plugins进行显示指明引入或者不引入,[官方文档](https://github.com/babel/babel-preset-env#include)
149
150### 6月 22号
151
152> 添加配置项useCommonChunk来禁用CommonChunPlugin
153
154> 调整htmlwebpackplugin输出的脚本顺序
155
156> 允许使用common Entry来指定哪些模块应该放到commonChunk中去
157
158### 6月20号
159> 升级到 webpack 3.0
160
161> 添加 ModuleConcatenationPlugin 根据文档说,这会极大的提升代码执行时的性能
162
163> 把 ASSET_PATH 的环境变量改成 **asset_path**
164
165> 把 DEV_SERVER 的环境变量改成 **dev_server**
166
167> 添加 analyzer_server=on的配置,启动打包分析服务
\No newline at end of file