gpt4 book ai didi

swift - AWS Amplify/iOS SDK 教程缺少步骤

转载 作者:搜寻专家 更新时间:2023-11-01 06:54:34 25 4
gpt4 key购买 nike

我正在关注 this Getting Started guide用于使用 AWS Amplify CLI 和适用于 iOS 的 AWS 开发工具包构建 iOS 应用程序。

而且我之前已按照 this Apple Getting Started guide 中的步骤进行操作用于简单地为单 View 应用程序创建基本框架。

一切顺利:在开始 AWS iOS SDK Swift 教程之前和之后,我能够在 Xcode 中构建我的空项目,启动模拟器,看到我的空白屏幕。

我的问题是 AWS 教程假定比我拥有更多的 Swift 知识。所以当它在最后说以下内容时——

Call the runMutation(), runQuery(), and subscribe() methods from your app code, such as from a button click or when your app starts in viewDidLoad().

—指南基本上跳过了一些步骤。

我已经为本教程创建了所需的 AWS 资源,但我不知道如何调用函数和更新已设置的 DynamoDB 表。

假设我可以向 UI View 添加两个文本字段(一个用于 ToDo“名称”,一个用于“描述”)并将按钮绑定(bind)到它们,有人可以帮助我完成剩下的工作吗?

更新下面回答。我因为提出这个问题而收到了反对票,但有人可能会争辩说入门指南应该是独立的。没什么大不了的;我学习了这两个教程并解决了我的问题,并为那些和我一样困惑的人发布了答案。

最佳答案

因此,在利用 Apple iOS Swift 入门指南创建 AWS 所需的必要 View 元素后,我能够成功完成 AWS Amplify/iOS SDK 入门指南。这意味着:

两个文本字段:“名称”和“描述”;一个标签;和一个按钮。这是我的导出属性:

//MARK: Properties
@IBOutlet weak var nameTextField: UITextField!
@IBOutlet weak var descTextField: UITextField!
@IBOutlet weak var todoItemLabel: UILabel!

我的 viewDidLoad():

override func viewDidLoad() {
super.viewDidLoad()

// Handle the text field’s user input through delegate callbacks.
nameTextField.delegate = self
descTextField.delegate = self

let appDelegate = UIApplication.shared.delegate as! AppDelegate
appSyncClient = appDelegate.appSyncClient
}

调用 runMutation() 的按钮操作:

//MARK: Actions
@IBAction func addToDoItem(_ sender: UIButton) {
runMutation()
}

并更改 runMutation() 以使用输入的值更新 DynamoDB:

let mutationInput = CreateTodoInput(name: nameTextField.text ?? "No Entry", description: descTextField.text)

如果您遵循了 AWS Amplify / iOS SDK Getting Started guide 的步骤 1 - 4并添加必要的 UI 元素,然后上面的代码将完成交易。

另请注意 the API reference @dennis-w 在上面的评论中指出,处理了入门指南中 AppDelegate 中那些已弃用的引用。

关于swift - AWS Amplify/iOS SDK 教程缺少步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54496131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com