跳到主要内容
cabinconfig
cabinconfig.js 是在项目级别上控制 cabinx-cli 编译行为的配置文件。

私有配置 && 公共配置

cabinconfig.js

cabinconfig.js 是在项目级别上控制 cabinx-cli 编译行为的配置文件,也就是说,不同项目,通过修改这个文件,可以实现不同编译行为。

但是一些配置是个性化的,并非所有人一样,比如 dev-server 的启动端口等,如果一个团队大家不一致,很容易产生 git 冲突,所以,在 0.7.0 添加了这类问的解决方案

cabinconfig.private.js

在项目根目录下添加这个文件,该文件的运行结果将覆盖 cabinconfig.js 的运行结果,也就是具有最高优先级。

开发者添加该文件的同时,还要在.gitignore文件里添加该文件,但需要注意,一定是个性化的配置,才可以放在该目录下。

DevServer

devServer 配置,描述路 cabinx-cli 自带的开发服务器的基本配置

devServer.port

http端口,默认为40103。

export default {
devServer: {
port: 40103
}
}

定义 dev-server 的 http 启动端口,可选值有 80,3000,40100,40101,40102,40103,40104,40105

devServer.httpsPort

https端口,默认为40101。

export default {
devServer: {
httpsPort: 40101
}
}

定义dev-server的https启动端口,可选值有 443,40100,40101,40102,40103,40104,40105。更多关于 https 的信息

devServer.autoRefresh

export default {
devServer: {
autoRefresh: true
}
}

定义文件修改后,是否自动刷新页面,可选值有 true , false

devServer.indexPage

export default {
devServer: {
indexPage: "https://cabinx.dmall.com"
}
}

定义 dev-server 启动后,默认打开的页面,建议将其配置在 cabinconfig.private.js 中

buildConfig

buildConfig配置,描述了编译流程的基本配置

target

module.exports = {
buildConfig: {
target: ['cabinx'],
...
},
};

用于指定代码编译方式,可选值有:

  • cabinx

最新版本默认为'cabinx',即跨端。支持最新框架提供的功能,编译后的代码支持在pc和移动端执行。

  • pc

编译的代码仅支持pc端运行,使用历史pc的组件库,目前已不再更新,新项目均推荐使用cabinx。更多关于pc的文档可以查看cabinxpc

<=V0.8.3的cabinx-cli默认target为pc,之后版本都默认为cabinx。注意升级脚手架时检查target配置。

  • cabinxmobile

编译代码仅支持移动端运行,目前已经弃用,不再维护。

危险

请检查cabinconfig.js是否配置target,没有请填写配置。

由于<=V0.8.3的脚手架版本默认target为pc,部门历史生成项目cabinconfig.js中未配置target,当脚手架升级版本大于V0.8.3后会使用跨端编译,此时对默认是pc的项目有影响。

entryHtml

定义了开发管理页,默认入口地址的配置

export default {
buildConfig:{
entryHtml: "http://www.baidu.com"
}
}

bizDomain

定义了输出代码与域名相关的部分

export default {
bizDomain: "dmall",// "dmall-os"|"rta"|"dmall"|guoquan
buildConfig:{
...
}
}

目前覆盖了:

  • HN输出的Html页面 与static.dmall.com的部分和.dmall.com的部分

可选项以及替换数据:

  • dmall -> dmall.com
  • dmall-os -> dmall-os.cn
  • rta -> rtasia.com
  • guoquan -> guoquan.com

skeletonLang

定义骨架屏生成期间,CabinX.getLocale方法,使用哪种语言。

export default {
buildConfig:{
skeletonLang:'en_US' // en_US | km_KH | zh_CN | zh_HN
}
}

mobileAppSkeletonIgnore

是否忽略骨架屏的生成。

export default {
buildConfig:{
mobileAppSkeletonIgnore: true
}
}

mobileAppDest

export default {
buildConfig:{
mobileAppDest: 'mobileapp',
}
}

HN 离线包生成的位置,相对项目的根目录。如果设置为 null,则不会生成 HN 的 zip

默认值 'mobileapp'