UNPKG

ewm

Version:

小程序原生插件

42 lines 1.59 kB
import { checkHandle, checkPropertiesValueType, checkPropertyField, deleteInheritAndMainMethods, EmptyFunc, eventsHandle, fieldHandle, initResponseData, IsDevelopment, isEmptyObj, IsTypescript, methodsCalledByMainHandle, } from "./_api"; export function CreateSubComponent() { const _createSubComponent = function (options) { fieldHandle(options, [ initResponseData, deleteInheritAndMainMethods, eventsHandle, methodsCalledByMainHandle, ]); if (isEmptyObj(options)) { return ""; } if (IsDevelopment) { checkHandle(options, [ checkPropertyField, !IsTypescript ? checkPropertiesValueType : EmptyFunc, ]); } options.definitionFilter = function (mainDef) { mergeOptions(mainDef, options); }; return Behavior(options); }; return _createSubComponent; } function mergeOptions(mainDef, options) { for (const key in options) { if (key === "data" || key === "properties" || key === "watch" || key === "computed") { const main = mainDef[key] || (mainDef[key] = {}); for (const k in options[key]) { if (k in main) { console.warn(`${k}与主配置冲突被忽略`); } else { main[k] = options[key][k]; } } delete options[key]; } } } //# sourceMappingURL=CreateSubComponent.js.map