build.json配置

阅读时间约 3 分钟
  • 基础配置项请参考: ice

    • 大部分非vite配置都支持

targets

  • 类型: Array

webpack的打包任务,可同时支持多个任务打包。不配置默认只打"web"

eg: 开启pc和无线打包配置如下:

{
	"targets": ["web", "web-mobile"]
}

注意 默认pc和无线的entry是同一份,所以pc(无线)的页面会全量转换成无线(pc),如果需要部分页面转换,可以再src下增加 mobile/index.j(t)sx 文件,作为无线的entry。

cone

  • 类型: Object

支持cone框架配置,比如一码多端、低代码、无线等。配置说明如下

{
	"cone": {
		"oneCode": false, //是否开启一码多端打包
		"pcToMobile": { //组件映射扩展配置,pc转无线,自定义组件映射规则
			"@alifd/next/lib/upload": "@alifd/next/lib/upload",// 无线任然用pc的上传组件
		},
		"mobileToPc": {} //组件映射扩展配置,无线转pc,自定义组件映射规则
		"mobile": false, //是否仅无线,true将开启rem转换, targets含web-mobile 自动启动
		"pxtorem": {},// px单位转rem的配置项, 配置参考: [postcss-pxtorem](https://github.com/xiaobc1234/postcss-pxtorem)
		"vwtorem": {}// 和上面配置一致
	}
}

注意 组件的映射规则如下:

  • 默认fusion的基础组件会互转: @alifd/next <-> @alifd/meet-react
  • 搭建的基础组件会互转: 搭建pc(tc-fusion) <-> mobile(tc-meet)
  • 搭建依赖的业务组件(cone自定义组件流程开发的组件)会互转: @scope/name/lib/index <-> @scope/name/es/mobile/index
  • 业务项目中components目录下的组件会互转: src/components/Button <-> src/components/Button/mobile

    • 也支持组件统一导出: src/components <-> src/components/mobile
  • 其他情况需要在build.json中进行pcToMobile 或者mobileToPc 的自定义映射配置。