热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

FirebaseSwift调用中的额外参数“数据”

需要有关Firebasedict错误的帮助。已经尝试了与该问题相关的一些解决方案,但没有奏效。

需要有关Firebase dict错误的帮助。已经尝试了与该问题相关的一些解决方案,但没有奏效。
我想使用AlertView获取和更新表中的数据,但是我在 addtaskpop()中将字典作为调用中的额外参数'data'时遇到错误在下面标记的提交动作中起作用

Secondviewcontroller.swift

func addtaskpop() {
let db = Firestore.firestore()
let alertCOntroller= UIAlertController(title: "Task",message: "Enter your Task and Amount",preferredStyle: .alert)
let submit = UIAlertaction(title: "Enter",style: .default)
{
(_) in
let task1 = alertController.textFields?[0].text
let amount1 = alertController.textFields?[1].text
let income1 = alertController.textFields?[2].text
self.dev = income1!
print("dev is \(self.dev)")
let amountcolor = Int(amount1!)
self.income.isHidden = false
// let incomeint = Int(income1!)
// var incometotal = incomeint
// incometotal = (incomeint + incomeint)
self.income.text = ("Income is Rs. \(self.dev)")
self.amount.append(amount1!)
let text = amount1
let textInt = Int(text!)
self.numbers.append(textInt!)
let total = self.numbers.reduce(0,+)
let amountstring = String(total)
self.totalamount.text = ("Rs.\(amountstring)")
let date = Date()
let format = DateFormatter()
format.dateFormat = "dd-MM-yyyy HH:mm"
let formattedDate = format.string(from: date)
print(formattedDate)
self.poptaskarray.append(task1!)
self.date.append(formattedDate)
self.mytableView.reloadData()
var docRef: DocumentReference? = nil
docRef = db.collection("Tasks").addDocument(data: [ **Extra argument 'data' in call**
"expensename": task1.text ?? "empty task",// "expensename": task1.text ?? "empty task","minus": amount1.text ?? "empty task","date": "\(formattedDate!)","amount": self.totalamount.text ?? "empty task","income": income.text ?? "empty task",]) { err in
if let err = err {
print("Error adding document: \(error.localizedDescription)")
} else {
print("Document added with ID: \(docRef!.documentID)")
}
}
}
let cancelaction = UIAlertaction(title: "Cancel",style: .destructive) { (_) in
}
alertController.addTextField { (textField) in
textField.placeholder = "Enter your task"
}
alertController.addTextField { (textField) in
textField.placeholder = "Enter your amount"
textField.keyboardType = .numberPad
// textField.text = "Rs. "
}
alertController.addTextField { (textField) in
textField.placeholder = "Enter your income"
textField.keyboardType = .numberPad
}
alertController.addaction(cancelaction)
alertController.addaction(submit)
//finally presenting the dialog box
self.present(alertController,animated: true,completion: nil)
}
}

我已经创建了 Task.swift

import Foundation
struct Task{
var expensename:String
var done: Bool
var date: String
var id: String
var amount: String
var income: String
var minus: String
var dictionary: [String: Any] {
return [
"expensename": expensename,"done": done,"date": date,"amount": amount,"income": income,"minus": minus
]
}
}
extension Task{
init?(dictionary: [String : Any],id: String) {
guard
let expensename = dictionary["expensename"] as? String,let dOne= dictionary["done"] as? Bool,let date = dictionary["date"] as? String,let amount = dictionary["amount"] as? String,let income = dictionary["income"] as? String,let minus = dictionary["minus"] as? String
else {
return nil
}
self.init(expensename: expensename,done: done,date: date,id: id,amount: amount,income: income,minus: minus)
}
}

感谢您的帮助!

感谢和问候





推荐阅读
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 经过两天的努力,终于成功解决了半平面交模板题POJ3335的问题。原来是在`OnLeft`函数中漏掉了关键的等于号。通过这次训练,不仅加深了对半平面交算法的理解,还提升了调试和代码实现的能力。未来将继续深入研究计算几何的其他核心问题,进一步巩固和拓展相关知识。 ... [详细]
  • 在Android应用开发中,实现与MySQL数据库的连接是一项重要的技术任务。本文详细介绍了Android连接MySQL数据库的操作流程和技术要点。首先,Android平台提供了SQLiteOpenHelper类作为数据库辅助工具,用于创建或打开数据库。开发者可以通过继承并扩展该类,实现对数据库的初始化和版本管理。此外,文章还探讨了使用第三方库如Retrofit或Volley进行网络请求,以及如何通过JSON格式交换数据,确保与MySQL服务器的高效通信。 ... [详细]
  • 在C#编程中,数值结果的格式化展示是提高代码可读性和用户体验的重要手段。本文探讨了多种格式化方法和技巧,如使用格式说明符、自定义格式字符串等,以实现对数值结果的精确控制。通过实例演示,展示了如何灵活运用这些技术来满足不同的展示需求。 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在配置Nginx的SSL证书后,虽然HTTPS访问能够正常工作,但HTTP请求却会遇到400错误。本文详细解析了这一问题,并提供了Nginx配置的具体示例。此外,还深入探讨了DNS服务器证书、SSL证书的申请与安装流程,以及域名注册、查询方法和CDN加速技术的应用,帮助读者全面了解相关技术细节。 ... [详细]
  • Spring框架中枚举参数的正确使用方法与技巧
    本文详细阐述了在Spring Boot框架中正确使用枚举参数的方法与技巧,旨在帮助开发者更高效地掌握和应用枚举类型的数据传递,适合对Spring Boot感兴趣的读者深入学习。 ... [详细]
  • 本文详细介绍了定时器输入捕捉技术的原理及其应用。通过配置定时器通道的引脚模式为输入模式,并设置相应的捕获触发条件,可以实现对外部信号的精确捕捉。该技术在实时控制系统中具有广泛的应用,如电机控制、频率测量等场景。文中还提供了具体的配置步骤和示例代码,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在当前的软件开发领域,Lua 作为一种轻量级脚本语言,在 .NET 生态系统中的应用逐渐受到关注。本文探讨了 Lua 在 .NET 环境下的集成方法及其面临的挑战,包括性能优化、互操作性和生态支持等方面。尽管存在一定的技术障碍,但通过不断的学习和实践,开发者能够克服这些困难,拓展 Lua 在 .NET 中的应用场景。 ... [详细]
  • 【系统架构师精讲】(16):操作系统核心概念——寄存器、内存与缓存机制详解
    在计算机系统架构中,中央处理器(CPU)内部集成了多种高速存储组件,用于临时存储指令、数据和地址。这些组件包括指令寄存器(IR)、程序计数器(PC)和累加器(ACC)。寄存器作为集成电路中的关键存储单元,由触发器构成,具备极高的读写速度,使得数据传输非常迅速。根据功能不同,寄存器可分为基本寄存器和移位寄存器,各自在数据处理中发挥重要作用。此外,寄存器与内存和缓存机制的协同工作,确保了系统的高效运行。 ... [详细]
  • 在洛谷 P1344 的坏牛奶追踪问题中,第一问要求计算最小割,而第二问则需要找到割边数量最少的最小割。通过为每条边附加一个单位权值,可以在求解最小割时优先选择边数较少的方案,从而同时解决两个问题。这种策略不仅简化了问题的求解过程,还确保了结果的最优性。 ... [详细]
author-avatar
方彦
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有