From b4f06ebaf62ecdaed6e8bcceed768a62cfe172fd Mon Sep 17 00:00:00 2001 From: xingshunxiang Date: Fri, 1 Aug 2025 16:12:01 +0800 Subject: [PATCH] CTE when skip required prop in object literal Issue: https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/ICPT3O?from=project-issue Description: throw CTE for skipping non-optional properties in object literal Reason: according to spec 7.5.2, Properties of a non-optional type cannot be skipped in an object literal, despite some property types having default values Signed-off-by: xingshunxiang --- arkoala-arkts/arkui/generated/component/text.ets | 4 ++-- arkoala-arkts/arkui/sdk/component/text.ets | 2 +- arkoala-arkts/shopping/user/src/ets/pages/homePage/User.ets | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/arkoala-arkts/arkui/generated/component/text.ets b/arkoala-arkts/arkui/generated/component/text.ets index b09aed7d7..96921405c 100644 --- a/arkoala-arkts/arkui/generated/component/text.ets +++ b/arkoala-arkts/arkui/generated/component/text.ets @@ -1184,7 +1184,7 @@ export enum MarqueeStartPolicy { ON_FOCUS = 1 } export interface TextOptions { - controller: TextController; + controller?: TextController; } export interface TextMarqueeOptions { start: boolean; @@ -1602,7 +1602,7 @@ export class TextOptions_serializer { public static write(buffer: SerializerBase, value: TextOptions): void { let valueSerializer : SerializerBase = buffer const valueHolderForController = value.controller - TextController_serializer.write(valueSerializer, valueHolderForController) + TextController_serializer.write(valueSerializer, valueHolderForController!) } public static read(buffer: DeserializerBase): TextOptions { let valueDeserializer : DeserializerBase = buffer diff --git a/arkoala-arkts/arkui/sdk/component/text.ets b/arkoala-arkts/arkui/sdk/component/text.ets index 2d89678f3..730b0e964 100644 --- a/arkoala-arkts/arkui/sdk/component/text.ets +++ b/arkoala-arkts/arkui/sdk/component/text.ets @@ -361,7 +361,7 @@ export enum MarqueeStartPolicy { ON_FOCUS = 1 } export declare interface TextOptions { - controller: TextController; + controller?: TextController; } export declare interface TextMarqueeOptions { start: boolean; diff --git a/arkoala-arkts/shopping/user/src/ets/pages/homePage/User.ets b/arkoala-arkts/shopping/user/src/ets/pages/homePage/User.ets index 25c96a883..0a12db80b 100644 --- a/arkoala-arkts/shopping/user/src/ets/pages/homePage/User.ets +++ b/arkoala-arkts/shopping/user/src/ets/pages/homePage/User.ets @@ -111,7 +111,8 @@ export struct User { url: item.uri, params: { num: this.num, - ratio: this.ratio + ratio: this.ratio, + message: 'undefined' } as SearchParam }) }) -- Gitee