chore: 更改 components 为 optional, 修改部分变量名

This commit is contained in:
力皓 2021-05-17 17:27:32 +08:00
parent cedea8a9ad
commit 70fcc1cb19

View File

@ -55,10 +55,10 @@ export type Asset = AssetList | AssetBundle | AssetItem | URL;
export type AssetList = Array<Asset | undefined | null>; export type AssetList = Array<Asset | undefined | null>;
export interface AssetsJson { export interface AssetsJson {
packages: Array; packages: Array<any>;
components: Array; components?: Array<any>;
componentList?: Array; componentList?: Array<any>;
bizComponentList?: Array bizComponentList?: Array<any>;
} }
export function isAssetItem(obj: any): obj is AssetItem { 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 { export function megreAssets(assets: AssetsJson, incrementalAssets: AssetsJson): AssetsJson {
if (!increaseAssets.packages) { if (incrementalAssets.packages) {
console.error('assets must have packages'); assets.packages = [...assets.packages, ...incrementalAssets.packages];
} }
if (!increaseAssets.components) { if (incrementalAssets.components) {
console.error('assets must have 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, incrementalAssets, 'componentList');
megreAssetsComponentList(assets, increaseAssets, 'bizComponentList'); megreAssetsComponentList(assets, incrementalAssets, 'bizComponentList');
return assets; return assets;
} }
function megreAssetsComponentList(assets: AssetsJson, increaseAssets: AssetsJson, listName: String): void { function megreAssetsComponentList(assets: AssetsJson, incrementalAssets: AssetsJson, listName: keyof AssetsJson): void {
if (increaseAssets[listName]) { if (incrementalAssets[listName]) {
if (assets[listName]) { if (assets[listName]) {
// 根据title进行合并 // 根据title进行合并
increaseAssets[listName].map((item) => { incrementalAssets[listName].map((item) => {
let matchFlag = false; let matchFlag = false;
assets[listName].map((assetItem) => { assets[listName].map((assetItem) => {
if (assetItem.title === item.title) { if (assetItem.title === item.title) {