问题标签 [observedobject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
380 浏览

ios - 如何从 Swift 中的观察对象中提取字符串值

我想从观察到的对象中提取字符串值

这是示例代码

我想使用"$viewModel.text"'s String 值。我怎样才能做到这一点?

0 投票
2 回答
10545 浏览

ios - SwiftUI:执行函数时如何从观察到的对象中捕获变化的值

我在 SwiftUI 中观察到的对象有问题。我可以在 View 结构上看到观察对象的值发生变化。但是在类或函数中,即使我更改了 TextField(这是可观察对象)的文本值,但“self.codeTwo.text”仍然没有改变。

这是我的代码示例(这是我的 ObservableObject)

主要问题是......“self.codeTwo.text”从未改变!

这是视图,我可以捕捉到这个值的变化

请帮帮我。

0 投票
2 回答
228 浏览

ios - SwiftUI/Combine no updates to @ObservedObject from @Published

I have a logon screen followed by an overview screen. When the user is successful at logon, the logon response sends back a list of items, which I want to display on the subsequent overview screen.

I can see the response being successfully mapped but the overview view is not receiving any update to the @ObservedObject. I could be missing something obvious but I've been through a bunch of articles and haven't managed to get anything working. Any help appreciated!

Logon view

Results View Model

Overview View

0 投票
1 回答
144 浏览

swiftui - 使用 ObservableObject 时如何保持对数据的引用

我是 Swiftui 的新手,我很难理解如何在渲染视图时正确保留在 ObservableObject 中创建的数据?或者一个完全不同的方法来解决这个问题?

更具体地说,它是关于在 List() 的每一行中获取 HTTP 数据。

现在,它在渲染父视图时过于频繁地进行 HTTP 调用,这会导致重新加载所有行。

可以在此处找到相同的问题:在视图更新后保留视图/数据模型的参考

列表()行:

0 投票
1 回答
164 浏览

view - 将类实例传递给 SwiftUI 中的 PreviewProvider?

所以在我的 ContentView 中,我正在创建一个视图:

其中 variable 是视图所需的初始化参数的名称;它接受与 ObservedObjectInstance 相同类型的东西。ObservedObjectInstance 是一个 @ObservedObject 变量,它被声明为结构级变量。在 ViewName 类中,我希望能够访问 ObservedObjectInstance 但我不确定如何访问。我尝试将以下内容声明为结构级变量:

然后在 PreviewProvider 中,我尝试执行以下操作:

但它没有用。我很确定 ViewName 类和 PreviewProvider 中的“变量”声明出了什么问题,但我不确定如何修复它。任何帮助将不胜感激。

0 投票
1 回答
73 浏览

swift - 当传入视图的 ObservedObject 更新时,SwiftUI 不会更新?

我有一个名为 SearchResults 的视图。每当传入的 ObservedObject 发生更改时,它都应该更新,但是 View 没有使用新值更新,我不知道为什么。

旁注:VModel 有一个类型为 [String] 的数组,称为 searchResults,我认为这个视图应该在 searchResults 数组更新时更新..?

0 投票
1 回答
279 浏览

mvvm - 将 @ObservableObject 传递给嵌套视图

我对 SwiftUI 很陌生,并试图将 forEach 循环中的数组传递给另一个视图,但 Xcode 说,我的“属性类型”与其包装器类型“ObservedObject”的“wrappedValue”属性不匹配。我在这里也发现了一些类似的问题,但那里的解决方案都没有帮助我。

当我直接在 forEach 循环中使用该对象时,一切都按需要工作。但是,我想在循环内实现的视图将非常复杂,因此将其传递给新结构的解决方案会很棒。

如果有人能向我解释为什么这段代码不起作用以及我需要做些什么来修复它,我将非常感激。

0 投票
1 回答
19 浏览

swift - 为什么我的 ObservedObject 已更新但未在视图中显示其更新的内容

我试图显示一个使用 ObservableObject 倒计时时间的简单视图,但似乎我的 ObservedObject 已更新,但未将其更新的内容显示到其绑定视图。显示保持在 60

在此处输入图像描述

0 投票
1 回答
425 浏览

swift - 一个 ObservedObject 需要接受另一个 ObservedObject 作为参数;你怎么做到这一点?

显然,我不能像我想要的那样在 ContentView 创建时直接传递 VModel,因为 VModel 对象尚未创建,因此无法访问......

回顾:我想将在 ContentView 中声明的 VModel 实例传入 annotationsVM 实例(也在 ContentView 中声明)

0 投票
1 回答
316 浏览

swiftui - 观察对象中的已发布 var 是否可以直接在 Picker 选择中用作绑定 var?

我是 xcode 11 和 SwiftUI 的新手。我正在为我的应用程序设置设置视图。使用 Published var dataType Int 创建了一个 ObservableObject。在设置视图中,我有一个选择器视图,我在其中传递了 settingsStore.dataType。它给了我以下错误。

无法将“Int”类型的值转换为预期的参数类型
“Binding <SelectionValue>

我知道我可以通过在视图中设置 @State var dataType 并为 Picker 传入 $dataTpye 来解决这个问题,然后将值分配给设置对象。只是想知道是否有更直接的方法来做到这一点。