‘Category’类型的值(也称为‘OpaquePointer值’)没有成员‘name’

fafcakar  于 2022-09-19  发布在  Go
关注(0)|答案(12)|浏览(193)

我在Xcode中与SWIFT合作时收到以下错误:--类型为‘Category’的值(也称为‘OpaquePointer值’)没有成员‘name’--我到处都找过了,但找不到解决方案。有人知道该怎么做吗?

以下是一个屏幕截图:

谢谢你的帮忙!

yizd12fk

yizd12fk1#

我在Angela Yu课程中尝试练习时也遇到了这种情况,在该课程中,Category是一个核心数据实体。我使用的是Xcode11.3.1。在多次尝试将模块设置为当前产品模块,并将Codegen设置为类定义,然后按Ctrl-B进行重建后,我仍然收到错误。然而,重新启动Xcode解决了这个问题,然后代码完成能够建议名称属性/属性。

yjghlzjz

yjghlzjz2#

我在学习Angela Yu课程时遇到了同样的问题,我已经尝试了我能找到的所有可用的解决方案,但只有这个解决方案对我有帮助:当您的项目打开时:

1.按下顶部面板上的产品
1.按“清理生成文件夹”

不要使用热键组合--只需用鼠标按下!只有这种方法才能帮助我摆脱这个错误。

lnlaulya

lnlaulya3#

我也有同样的问题。在我的DataModel文件中,我将实体名称和类名从“Category”更改为不同的名称,如“TodoListCategory”。然后在我的CategoryView控制器中,我将所有的Category对象更改为“TodoListCategory”并重新构建。它解决了我的问题。

之后,您可能会看到错误“Command CompileSwift FAILED WITH A NOT ZERE EXIT CODE”。现在,尝试使用Shift+Command+K&Option+Shift+Command+K清除项目

w1jd8yoj

w1jd8yoj4#

如果您正在学习Angela Yu的课程,我发现通过为Codegen下的Category实体选择Manual/None,然后选择Class Definition,类是自动生成的。

之后还要运行cmd + b

monwx1rj

monwx1rj5#

也在安吉拉的班上。我发现,通过删除核心数据模型并将它们作为没有关系的独立实体重新启动,设置保存和加载功能,运行应用程序,然后然后返回链接关系就解决了问题。我认为这与在能够引用属性之前将实体保存为NSManagedObject有关。我猜想,如果没有将它们作为NSManagedObject初始化,默认类型是不透明指针。祝你好运!

lhcgjxsq

lhcgjxsq6#

我也在学习同样的一课。在我的例子中,只是一个Xcode错误,“Category”没有被识别为一个类。我只是关闭并重新打开它,工作起来很好。

x3naxklr

x3naxklr7#

类别未提供名称属性

5gfr0r5j

5gfr0r5j8#

将“类别”变量的形式“var”更改为“let”。
从…,

var categories = [Category]()

let categories = [Category]()

只需重建它,这就奏效了。

0vvn1miw

0vvn1miw9#

如果[Category]()未被识别为NSManagedOject,只需将术语Category放在括号内的两个单反引号之间。

link to example

9rbhqvlz

9rbhqvlz10#

声明Category类型的数组时,如下所示:

var categories = [[`Category`]]()

(如果实体名称为“Category”)

注:类别左侧只有一个反勾号。

zf2sa74q

zf2sa74q11#

日安!

请确保您没有选择不透明指针而不是您的类。请参见下面的内容:

Screenshot

如果您这样做了,将Category替换为‘Category’

m528fe3b

m528fe3b12#

我们需要在右侧的检查器中将类模块更改为“当前产品模块”

enter image description here

相关问题