BUG专栏
收集各种各样的BUG。欢迎大家活跃投稿
谢道韫666
正在学习鸿蒙中,请多多指教
展开
-
Type ‘String‘ is not assignable to type ‘ResourceStr‘. <ArkTSCheck>
这种区分主要是为了在编程中更清晰地区分类型和具体的值,有助于提高代码的可读性和可维护性,同时也符合编程语言的语法规范和类型系统的设计。在许多编程语言中,包括 JavaScript 和一些强类型语言,通常是指字符串的数据类型,是一种类型的名称。(小写)通常是指字符串的值,即具体的字符串内容。这个错误表示您正在尝试将一个字符串类型(类型的变量或参数,但这两种类型不兼容。经典BUG 仔细看一下以下代码区别。)的值赋给一个期望是。很显然答案已经出来了。原创 2024-09-13 11:51:10 · 52 阅读 · 0 评论 -
代码没有报错,但是页面没有交互
的状态更改能够正确反映到界面上。在鸿蒙中,状态的更改有时需要特定的机制来触发界面更新。数据是否正确加载:确保在执行排序操作之前,的值是否正确更改:在点击排序选项时,确认。的值确实按照预期进行了更新。已经正确获取到了数据。原创 2024-09-12 21:28:59 · 43 阅读 · 0 评论 -
Function return type inference is limited (arkts-no-implicit-return-types) <ArkTSCheck>Operator ‘+‘
提示您函数的返回类型应该明确声明,而不是依赖于隐式推断。类型的对象和一个数字进行相加操作,这在类型上是不兼容的。表示您正在尝试将一个。原创 2024-09-12 16:27:04 · 63 阅读 · 0 评论 -
Property ‘show‘ does not exist on type ‘typeof AlertDialog‘. <ArkTSCheck>
可能的原因是您正在尝试使用一个不存在的方法或属性。您需要检查您所使用的。的相关文档或代码定义,确定是否有正确的方法来实现您想要的显示操作。,或者您需要先正确初始化或配置。对象,然后再进行相应的操作。也许存在其他方法来显示。解决 删掉这一行导入。原创 2024-09-12 11:59:06 · 66 阅读 · 0 评论 -
Use explicit types instead of “any“, “unknown“ (arkts-no-any-unknown) <ArkTSCheck>
上面 然后就知道了类型,粘贴复制就行了。这个提示是让您避免在代码中使用。类型,而是使用明确的具体类型。原创 2024-09-12 11:43:47 · 89 阅读 · 0 评论 -
Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-
这个错误提示表明您正在创建一个对象字面量,但它没有与任何明确声明的类或接口相对应。原创 2024-09-12 11:23:50 · 63 阅读 · 0 评论 -
Cannot assign to ‘sum‘ because it is a constant. <ArkTSCheck>
其实很多简单的报错,它都会给你生成解决办法,点击下面那个就能自动改错。这个错误提示表明您正在尝试给一个被声明为常量(为常量,常量的值不能被修改。原创 2024-09-12 11:04:47 · 157 阅读 · 0 评论 -
‘sum += item‘ does not comply with the UI component syntax. <ArkTSCheck
需要在更外层的作用域中定义,并且这种方式可能在某些特定的上下文或框架中有不同的要求和限制。这个错误通常表示在特定的上下文(可能是某种 UI 组件的构建或相关逻辑)中,直接进行类似。您的代码在 ArkTS 中存在一些错误。在 ArkTS 中应该使用。这样的数值累加操作是不被允许的或者不符合当前的语法规范。但请注意,在上述代码中,如果您坚持要使用类似。原创 2024-09-12 11:02:17 · 43 阅读 · 0 评论 -
Use explicit types instead of “any“, “unknown“ (arkts-no-any-unknown) <ArkTSCheck>
您应该根据这个变量实际存储的数据来指定一个确切的类型,比如。例如,如果您有一个变量,原本被定义为。这样可以增强代码的类型安全性和可读性。这个提示是建议您在代码中避免使用。类型,而是使用更明确的具体类型。或者您自定义的类型等。原创 2024-09-12 10:57:45 · 140 阅读 · 0 评论 -
Property ‘endWith‘ does not exist on type ‘string‘. Did you mean ‘endsWith‘? <ArkTSCheck>
方法,但正确的方法应该是。这个错误提示表明您在使用。原创 2024-09-12 10:27:48 · 70 阅读 · 0 评论 -
Type ‘Color | “#37bdee“ is not assignable to type ‘number. Type ‘string‘ is not assignable to type ‘
您需要确保赋值的类型与目标类型匹配。如果您期望的是一个数字,而现在得到的是颜色或字符串,您可能需要进行类型转换或者检查赋值的源头,以确保提供的是正确的数字类型的值。的值赋给一个期望为数字类型的变量或参数,但这是不允许的。是一个赋值操作,而您可能想要的是比较操作。这个错误表示您正在尝试将一个类型为。原创 2024-09-11 16:35:42 · 70 阅读 · 0 评论 -
This comparison appears to be unintentional because the types ‘string[]‘ and ‘string‘ have no overla
例如,如果您想比较数组中的某个元素与一个字符串,您需要先获取数组中的元素再进行比较。您需要检查您的比较操作,确保比较的双方是兼容的类型或者您进行了适当的类型转换。)进行比较,但这两种类型没有重叠,这种比较可能不是您有意的。这样就可以正确地判断数组中是否存在指定的字符串。这个错误提示表明您正在对一个字符串数组(这个比较会出现错误,因为。是一个字符串数组,而。原创 2024-09-11 15:39:43 · 121 阅读 · 0 评论 -
Argument of type ‘(a: Hero, b: Hero) => number | undefined‘ is not assignable to parameter of type ‘
语句的所有分支都返回了数字。方法期望的回调函数必须始终返回一个数字。,其他分支可能没有返回值或者返回了。这个错误表明您的排序函数可能返回了。原创 2024-09-11 14:25:55 · 181 阅读 · 0 评论 -
The right-hand side of an arithmetic operation must be of type ‘any‘, ‘number‘, ‘bigint‘ or an enum
属性的定义和赋值,确保其是有效的数字类型或者可以正确转换为数字类型。这个错误提示表明在进行算术运算时,左侧的操作数类型不符合要求。的值在进行运算时是否都有合理的数字类型。就像之前解释的,在您的。函数中的比较操作(如。原创 2024-09-11 14:23:56 · 120 阅读 · 0 评论 -
Argument of type ‘(a: Hero, b: Hero) => void‘ is not assignable to parameter of type ‘(a: Hero, b: H
方法期望回调函数比较两个元素并返回一个数字,用于确定它们的顺序。方法的回调函数中没有返回一个数字。这个错误提示表明您在。原创 2024-09-11 14:16:53 · 100 阅读 · 0 评论 -
Argument of type ‘number‘ is not assignable to parameter of type ‘RotateOptions‘. <ArkTSCheck>
这个错误表明在调用 rotate(90) 函数时,传递的参数类型不正确。rotate 函数期望的是一个 RotateOptions 类型的对象,而不是一个数字。问题可能出在调用 rotate 时没有正确理解它的参数类型。为了解决这个问题,我们需要创建一个 RotateOptions 对象并将它传递给 rotate 函数。这个对象应该包含一个 angle 属性,设置为 90,表示旋转的角度。原创 2024-09-11 13:16:06 · 118 阅读 · 0 评论 -
Function return type inference is limited (arkts-no-implicit-return-types) <ArkTSCheck>
在你提供的代码片段中,.map(item => item.trim()) 中的 map 函数会对数组中的每个元素应用一个转换函数。由于 map 函数会产生一个与原始数组大小相同的新数组,并且新数组中的每个元素都是原始元素应用转换函数后的结果,所以返回类型应该是一个新的字符串数组。在这个例子中,map 函数中的转换函数 (item: string): string => item.trim() 指定了输入参数类型是字符串,返回类型也是字符串。这样,编译器就可以正确地推断出 map 函数的返回类型。原创 2024-09-11 10:43:57 · 174 阅读 · 0 评论 -
Argument of type ‘{ topLeftRadius: number; topRightRadius: number; }‘ is not assignable to parameter
然而,{topLeftRadius: 10,topRightRadius: 10} 这个对象字面量中,属性名 topLeftRadius 和 topRightRadius 不被 BorderRadiuses 或 LocalizedBorderRadiuses 类型所接受。对象字面量只能指定已知的属性,并且 “topLeftRadius” 在类型 “Resource | BorderRadiuses | LocalizedBorderRadiuses” 中不存在。原创 2024-09-11 09:43:33 · 227 阅读 · 0 评论 -
‘scroll‘ does not comply with the UI component syntax. <ArkTSCheck>Cannot find name ‘scroll‘.
请检查您的代码,确认组件名称的正确拼写,并确保其使用方式符合相应框架或库的规定。不符合 UI 组件的语法,并且可能是因为您应该使用大写的。这个错误提示表明您使用的。原创 2024-09-10 20:39:46 · 168 阅读 · 0 评论 -
The component ‘GridItem‘ can only have a single child component.
组件只能包含一个子组件。您需要检查相关代码,确保每个。中展示多个元素,可以将它们放在一个单独的容器组件(如。组件内部只有一个直接子组件。您可以将循环中的内容放在一个容器组件(如。)中,然后将这个容器组件作为。只能有一个子组件的规则。原创 2024-09-10 20:25:45 · 248 阅读 · 0 评论 -
Property ‘textExtend‘ does not exist on type ‘TextAttribute‘. <ArkTSCheck
这个错误表示在 ArkTS 中,类型的对象上没有名为。原创 2024-09-10 19:29:27 · 155 阅读 · 0 评论 -
The ‘isShow‘ attribute must have its type specified. <ArkTSCheck>
属性必须指定其类型。原创 2024-09-10 18:18:13 · 90 阅读 · 0 评论 -
The ‘ListItem‘ component can have only one child component. <ArkTSCheck>
组件内部只有一个直接子组件。如果您想要包含多个元素,可以将它们放在一个容器组件(如。组件只能有一个子组件,但您可能在其中放置了多个子组件。)中,然后将这个容器组件作为。您需要检查相关的代码,确保。原创 2024-09-10 18:16:23 · 145 阅读 · 0 评论 -
Use explicit types instead of “any“, “unknown“ (arkts-no-any-unknown) <ArkTSCheck>
要解决这个问题,您需要为相关的变量、参数或返回值指定具体的类型,而不是使用。例如,如果一个变量应该是字符串类型,您可以明确地将其类型声明为。类型,而建议您使用明确的具体类型。这个错误提示表明您在代码中使用了。原创 2024-09-10 18:08:38 · 92 阅读 · 0 评论 -
Cannot redeclare block-scoped variable ‘str2‘. <ArkTSCheck
要解决这个问题,您需要确保每个变量只被声明一次。检查您的代码,找到重复声明。的地方并删除多余的声明,或者修改变量名以确保唯一性。这个错误提示表明您在同一个作用域内重复声明了名为。原创 2024-09-10 17:44:38 · 90 阅读 · 0 评论 -
Property ‘trim‘ does not exist on type ‘string[]‘. <ArkTSCheck>
您可能需要检查您的代码,确认您正在操作的对象是单个字符串而不是字符串数组。如果您想要对数组中的每个字符串进行。这个错误提示表明您正在尝试在一个字符串数组上使用。操作,可以使用数组的遍历方法来实现。方法,但数组类型没有这个方法。原创 2024-09-10 16:56:16 · 141 阅读 · 0 评论 -
A class member cannot have the ‘const‘ keyword. <ArkTSCheck>
在 ArkTS 中,类成员不能使用。的值需要在后续进行修改,使用。的修改会影响界面的更新,使用。修饰,您可以将其修改为。,具体取决于您的需求。原创 2024-09-10 16:01:40 · 177 阅读 · 0 评论 -
Not all code paths return a value. <ArkTSCheck>
这通常发生在定义了一个应该返回值的函数或方法,但存在某些情况或分支导致没有返回相应的值。您需要检查相关的函数,确保在所有可能的执行路径中都有返回值。这个错误提示 “Not all code paths return a value.” 意思是您的某些代码路径没有返回值。原创 2024-09-10 15:22:27 · 205 阅读 · 0 评论 -
Unexpected token. A constructor, method, accessor, or property was expected. <ArkTSCheck>
这个错误通常表示在您的代码中存在语法错误,可能是在期望出现构造函数、方法、访问器或属性的地方,出现了不符合语法规则的内容。这一行不能直接放在结构体的属性定义部分。在 ArkTS 的结构体中,属性的定义通常使用。或者普通的类型声明。原创 2024-09-10 16:04:54 · 159 阅读 · 0 评论