我正在创建一个数组,从数据库中提取每个元素,因此每次应用程序运行时,它都会从数据库中获取新数据。
是否可以对数组的第一个元素进行硬编码?因此,每次应用加载时,第一个元素始终是“我的第一个元素”吗?
这是我从Firebase创建动态数组的方式,首先创建一个驱动程序数组,然后过滤该数组以删除重复的数组,最后得到“ sortedDriverName”,但是我希望向其中静态添加一个元素每次发射时该阵列的开始
let key = UserDefaults.standard.value(forKey: "uid") as! String
print(key);
firebaseDB.collection("message").document(key).collection("messages").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
}
else {
self.driverArr.removeAll()
for document in querySnapshot!.documents {
print("\(document.documentID) => \(document.data())")
let msgdata = document.data() as! [String:Any]
print(msgdata)
var msgObj = Message()
if let name = msgdata["name"] as? String {
msgObj.name = name
}
self.driverArr.append(msgObj)
}
if self.driverArr.count < 1 {
print("No Drivers")
}
else{
print("*** Driver Names array ***")
//print(self.driverArr)
self.driverName = self.driverArr.compactMap({$0.name})
self.sortedDriverName = Array(Set(self.driverName))
print(self.sortedDriverName)
}
}
}
答案 0 :(得分:0)
生成动态数组,然后完成操作,只需在索引0处将一个项目插入数组即可。
npm run dev
或
从第一个元素开始初始化数组,然后附加其余行
sortedDriverName.insert("My first driver", at: 0)