From 0af165cd275ff5bfa4de9eb15b366f0e3c3be999 Mon Sep 17 00:00:00 2001 From: l00913061 Date: Tue, 8 Jul 2025 20:21:19 +0800 Subject: [PATCH] objectlink Signed-off-by: l00913061 Change-Id: I16815393e6694025242c9c7ef5ff588f7f93c47e --- .../ui-plugins/interop/initstatevar.ts | 21 +++++++------------ arkui-plugins/ui-plugins/interop/interop.ts | 11 +++++++--- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/arkui-plugins/ui-plugins/interop/initstatevar.ts b/arkui-plugins/ui-plugins/interop/initstatevar.ts index 8ac0d576b..7c72aaf34 100644 --- a/arkui-plugins/ui-plugins/interop/initstatevar.ts +++ b/arkui-plugins/ui-plugins/interop/initstatevar.ts @@ -52,7 +52,7 @@ export function initialArgs(args: arkts.ObjectExpression, varMap: Map arkts.Expression): ark * @param value * @param type * @param proxySet - * @returns generate code to process @Link data interoperability + * @returns generate code to process @Link, @ObjectLink data interoperability */ export function processLink(keyName: string, value: arkts.Expression, type: arkts.TypeNode, proxySet: Set): arkts.Statement[] { const valueDecl = arkts.getDecl(value); @@ -127,16 +128,10 @@ export function processLink(keyName: string, value: arkts.Expression, type: arkt let varName = ((value as arkts.MemberExpression).property as arkts.Identifier).name; let proxyName = stateProxy(varName); let stateVar = (): arkts.TSNonNullExpression => createBackingFieldExpression(varName); - if (hasDecorator(valueDecl, DecoratorNames.STATE) || hasDecorator(valueDecl, DecoratorNames.PROP) || - hasDecorator(valueDecl, DecoratorNames.PROVIDE) || hasDecorator(valueDecl, DecoratorNames.LINK) || - hasDecorator(valueDecl, DecoratorNames.CONSUME)) { - if (!proxySet.has(varName)) { - proxySet.add(varName); - const getProxy = getStateProxy(proxyName, stateVar); - result.push(getProxy); - } - } else { - throw Error('unsupported decorator for Link'); + if (!proxySet.has(varName)) { + proxySet.add(varName); + const getProxy = getStateProxy(proxyName, stateVar); + result.push(getProxy); } const setParam = setPropertyESValue( 'param', diff --git a/arkui-plugins/ui-plugins/interop/interop.ts b/arkui-plugins/ui-plugins/interop/interop.ts index c39a64175..bfbceccad 100644 --- a/arkui-plugins/ui-plugins/interop/interop.ts +++ b/arkui-plugins/ui-plugins/interop/interop.ts @@ -237,7 +237,6 @@ function createComponent(className: string): arkts.Statement[] { function createWrapperBlock(context: InteropContext, varMap: Map, updateProp: arkts.Property[]): arkts.BlockStatement { - const enableStateManagementInterop = false; const className: string = context.className; const path: string = context.path; const args: arkts.ObjectExpression | undefined = context.arguments; @@ -248,7 +247,7 @@ function createWrapperBlock(context: InteropContext, varMap: Map { instance.invokeMethod('updateStateVars', updateParam) } + */ function createUpdater(updateProp: arkts.Property[]): arkts.ArrowFunctionExpression { const updateState = (updateProp.length !== 0) ? updateStateVars(updateProp) : []; return arkts.factory.createArrowFunction( -- Gitee