From 70fcc1cb1978b3a78dc5d3e2058d43a289de9129 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8A=9B=E7=9A=93?= Date: Mon, 17 May 2021 17:27:32 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E6=9B=B4=E6=94=B9=20components=20?= =?UTF-8?q?=E4=B8=BA=20optional,=20=E4=BF=AE=E6=94=B9=E9=83=A8=E5=88=86?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/utils/src/asset.ts | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/packages/utils/src/asset.ts b/packages/utils/src/asset.ts index 39c4ee7a9..2c557ff3c 100644 --- a/packages/utils/src/asset.ts +++ b/packages/utils/src/asset.ts @@ -55,10 +55,10 @@ export type Asset = AssetList | AssetBundle | AssetItem | URL; export type AssetList = Array; export interface AssetsJson { - packages: Array; - components: Array; - componentList?: Array; - bizComponentList?: Array + packages: Array; + components?: Array; + componentList?: Array; + bizComponentList?: Array; } export function isAssetItem(obj: any): obj is AssetItem { @@ -100,29 +100,27 @@ export function assetItem(type: AssetType, content?: string | null, level?: Asse }; } -export function megreAssets(assets: AssetsJson, increaseAssets: AssetsJson): AssetsJson { - if (!increaseAssets.packages) { - console.error('assets must have packages'); +export function megreAssets(assets: AssetsJson, incrementalAssets: AssetsJson): AssetsJson { + if (incrementalAssets.packages) { + assets.packages = [...assets.packages, ...incrementalAssets.packages]; } - if (!increaseAssets.components) { - console.error('assets must have components'); + if (incrementalAssets.components) { + assets.components = [...assets.components, ...incrementalAssets.components]; } - assets.packages = [...assets.packages, ...increaseAssets.packages]; - assets.components = [...assets.components, ...increaseAssets.components]; - megreAssetsComponentList(assets, increaseAssets, 'componentList'); - megreAssetsComponentList(assets, increaseAssets, 'bizComponentList'); + megreAssetsComponentList(assets, incrementalAssets, 'componentList'); + megreAssetsComponentList(assets, incrementalAssets, 'bizComponentList'); return assets; } -function megreAssetsComponentList(assets: AssetsJson, increaseAssets: AssetsJson, listName: String): void { - if (increaseAssets[listName]) { +function megreAssetsComponentList(assets: AssetsJson, incrementalAssets: AssetsJson, listName: keyof AssetsJson): void { + if (incrementalAssets[listName]) { if (assets[listName]) { // 根据title进行合并 - increaseAssets[listName].map((item) => { + incrementalAssets[listName].map((item) => { let matchFlag = false; assets[listName].map((assetItem) => { if (assetItem.title === item.title) {