ios - 调用删除按钮Api后如何删除模型类中保存的数据?

标签 ios swift

在我的愿望 list 页面中,单击后我有删除按钮,我正在调用 api 来删除服务器中的项目,但删除后在服务器中成功,但在 TableView 中我无法删除它,任何人都可以帮助我如何删除我从模型类传递的这个和这里的数据?

这是我的代码

func deleteButtonAction(button: UIButton){
        let buttonPosition = button.convert(CGPoint(), to: tableDetails)
        let index = tableDetails.indexPathForRow(at: buttonPosition)
        let obj = wishListModel[(index?.row)!]
        let deleteURL = "http://magento.selldesk.io/index.php/rest/V1/wishlist/delete/\(obj.wishlistItemId!)?customer_id=\(self.customerId!)"
        self.deleteWishListItemsDownloadJsonWithURl(deleteApi: deleteURL)
    }
func deleteWishListItemsDownloadJsonWithURl(deleteApi: String){
        let url = URL(string: deleteApi)
        var request = URLRequest(url: url! as URL)
        request.httpMethod = "DELETE"

        let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
            if error != nil { print(error!); return }
            do {
                if let jsonObj = String(data: data!, encoding: .utf8) {
                    print(jsonObj)
                    DispatchQueue.main.async {
                       self.tableDetails.reloadData()
                    }
                }
            } catch {
                print(error)
            }
        }
        task.resume()
    }

最佳答案

如果你想删除特定索引,你必须调用wishListModel.removeAtIndex(index) 否则,如果您想从 WishListModel 中删除所有对象,请在服务器的成功响应中使用 wishListModel.removeAll() 。

P.S 确保在调用 self.tableDetails.reloadData() 之前删除对象

关于ios - 调用删除按钮Api后如何删除模型类中保存的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47176871/

相关文章:

ios - 无法使用字符串创建 NSUUID

ios - 发布时禁用 AWS SNS 端点

ios - 如何防止 TableView 单元格重复? swift

swift - 停止在 Swift 中监听 NSEvent

ios - 对象-c/iOS :How to use ASynchronous to get a data from URL?

ios - 自定义 iOS 加载图标

ios - 没有 SDK 的 AWS Mobile

ios - Swift 2.0 问题显示带有自定义声音文件的通知

swift - Swift 中嵌套可选类型及其数组的推断、静态和动态类型

ios - 不透明度只持续一秒钟