1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
| const fileLoader = require('./file-loader.js')
|
| const defaultOptions = {
| limit: -1,
| fallback: fileLoader
| }
|
| const inlineLimit =
| process.env.UNI_PLATFORM === 'mp-weixin' ||
| process.env.UNI_PLATFORM === 'mp-qq' ||
| process.env.UNI_PLATFORM === 'mp-toutiao' ||
| process.env.UNI_PLATFORM === 'mp-kuaishou' ||
| process.env.UNI_PLATFORM === 'mp-lark' ||
| process.env.UNI_PLATFORM === 'mp-jd' ||
| process.env.UNI_PLATFORM === 'mp-xhs' ||
| process.env.UNI_PLATFORM === 'app-plus' // v2需要base64,v3需要rewriteUrl
|
| // mp-weixin,mp-qq,app-plus 非v3(即:需要base64的平台)
| // 将/static/logo.png转换为~@/static/logo.png
| // @import,src,background,background-image
|
| const rewriteUrl = inlineLimit ? require('postcss-urlrewrite')({
| imports: true,
| properties: ['src', 'background', 'background-image'],
| rules: [{
| from: /^@\//,
| to: '~@/'
| }, {
| from: /^\/([^/])/,
| to: '~@/$1'
| }]
| }) : () => {}
|
| module.exports = {
| loader: 'url-loader',
| options () {
| if (process.env.UNI_PLATFORM === 'h5') {
| // h5平台,不对 url-loader 作调整,默认limit:4096,也不修改file-loader输出路径(已做处理)
| return {
| ...defaultOptions,
| limit: 4096
| }
| }
| if (inlineLimit) {
| return {
| ...defaultOptions,
| limit: process.env.UNI_USING_V3 ? -1 : 40960 // (主要用于background-image)
| }
| }
| return {
| ...defaultOptions
| }
| },
| rewriteUrl
| }
|
|