mh-two-thousand-and-two
2024-04-12 3d2ec2fd0578d3ba0a414b0cc4e4a2ae60878596
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/*
 * Copyright (C) 2017, hapjs.org. All rights reserved.
 */
 
const optionsConfig = {
  // 枚举类型
  splitChunksModeEnum: {
    // 默认:冗余到每个页面JS中
    REDUNDANCY: 'REDUNDANCY',
    // 抽取公共JS到chunk文件中
    SMART: 'SMART'
  },
  // 抽取公共JS的文名称
  splitChunksNameEnum: {
    APP: 'app-chunks.json',
    PAGE: 'page-chunks.json'
  }
}
 
const options = {
  // 是否使用debug的签名证书
  debug: false,
  // 是否开启分析
  stats: false,
  // sourcemap配置
  devtool: false,
  // 是否禁用子包
  disableSubpackages: false,
  // 是否禁用流式编译
  disableStreamPack: false,
  // 是否禁用V8的6.5版本编译
  disableScriptV8V65: false,
  // 是否编译复合选择器,生成_meta信息
  optimizeDescMeta: false,
  // 是否压缩CSS属性名
  optimizeCssAttr: false,
  // 是否压缩模板属性名
  optimizeTemplateAttr: false,
  // TODO:是否支持页面级别的样式(暂不支持)
  optimizeStylePageLevel: false,
  // TODO:是否支持应用级别的样式(暂不支持)
  optimizeStyleAppLevel: false,
  // 延迟加载自定义组件
  enableLazyComponent: false,
  // 是否移除无用资源
  optimizeUnusedResource: false,
  // 是否将dsl打包到rpk
  includeDslFromLib: false,
  // 解决sourcemap资源的错位问题
  matchSourcemap: false,
  // 开启css样式抽取
  enableExtractCss: false,
  removeUxStyle: false,
  // 是否启用e2e测试用例
  enableE2e: false,
  // 是否启用代码覆盖率检查
  enableIstanbul: false,
  // 抽取公共JS的配置
  splitChunksMode: optionsConfig.splitChunksModeEnum.REDUNDANCY
}
 
/**
 * 初始化命令行中传递的配置
 * @param argopts - 命令行参数对象
 */
function initOptions(argopts) {
  // TODO release memeory, use optimize-prop only
  Object.assign(options, argopts)
}
 
module.exports = { options, initOptions, optionsConfig }