我已经看了所有这些Swift和asp。net和javascript问题。
1 2 3 4 5
目标:
当我从MessageListController中的聊天消息列表中选择一条消息时,我希望下一个ChatDetailController中打开的会话是所选择的会话。
我正在为我的WatchKit应用程序在此iOS图像中做同样的事情。选择与Sophia的消息,并打开与Sophia的聊天。[![在此处输入图像描述][6]][6]
我想传递json“message\u id”,即chatMessageId属性。正如您在代码中看到的那样,我已经将聊天信息ID从消息模型传递到聊天详细控制器。
我需要通过的是ChatModel的chatMessageId吗?还是我已经在传递我需要的数据了
传递的上下文:可选(HTWatch\u Extension.MessageModel(合作伙伴:“9859”,昵称:“Marco”,消息:“你看到的是狗吗?”,城市:“马德里”,countryBadgeImageURL:https://i.imgur.com/PJcyle7.jpg,messageListImageURL:https://i.imgur.com/PJcyle7.jpg,聊天信息ID:“Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ”,状态:“脱机”)
尝试:我是否需要从ChatDetailController的awakeWithContext方法中提取解析ChatModel的Do catch块,并将其放入MessageListController的didSelectRowAt方法中?
消息列表控制器
// ...code...
var messageObject = [MessageModel]()
var chatObject = [ChatModel]()
// ...code...
override func table(_ table: WKInterfaceTable, didSelectRowAt rowIndex: Int) {
var messageContext = messageObject[rowIndex]
var chatContext = chatObject[rowIndex]
do {
guard let fileUrl = Bundle.main.url(forResource: "Chats", withExtension: "json") else {
print("File could not be located")
return
}
let data = try Data(contentsOf: fileUrl)
let decoder = JSONDecoder()
let msg = try decoder.decode([ChatModel].self, from: data)
self.chatObject = msg
} catch let error {
print(error)
}
messageContext.chatMessageId = (chatObject as AnyObject).filter { (dictionaryTemp:[String:String]) -> Bool in
return dictionaryTemp["message_id"] == chatContext.chatMessageId
}
// WatchKit's model presentation method.
presentController(withName: "ChatDetailController", context: messageContext)
}
如果我理解正确,您的Chat.json
将为所有消息ID设置聊天记录。选择一个消息ID行并加载相应的聊天记录。
在这种情况下,您可以使用过滤器根据消息进行解析。假设你在这样的字典里有它。
示例:
let responseString = "{\"name\":\"Tom\"}"
if let responseData = responseString.data(using: .utf8){
do {
let object = try JSONSerialization.jsonObject(with:responseData , options: .allowFragments)
print("Response Object=\(object)")
} catch{
print("parsing Error=\(error)")
}
}
您可以使用类似的代码来创建您的对象。最终对象应该类似于chat Dicpedia
let chatDictionary = [
[
"fromId": "zz1234skjksmsjdfwe2zz",
"toId": "qq43922sdkfjsfmmxdfqq",
"messageText": "Have you seen is dog?",
"imageUrl": "https://i.imgur.com/PJcyle7.jpg",
"message_id": "Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ",
"read": "true"
],
[
"fromId": "zz1234skjksmsjdfwe2zz",
"toId": "qq43922sdkfjsfmmxdfqq",
"messageText": "Yes I have. It's cute.",
"imageUrl": "https://i.imgur.com/PJcyle7.jpg",
"message_id": "Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ",
"read": "true"
],
[
"fromId": "zz1234skjksmsjdfwe2zz",
"toId": "qq43922sdkfjsfmmxdfqq",
"messageText": "I want to get a pet too.",
"imageUrl": "https://i.imgur.com/PJcyle7.jpg",
"message_id": "Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ1",
"read": "true"
]
]
您在索引处选择了行
override func table(_ table: WKInterfaceTable, didSelectRowAt rowIndex: Int) {
let message = messageObjects[rowIndex]
// Create a chat object Dictionary, parse it before you pass it to the detail View Controller , if you have the chat.json.
// I have used 'Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ', but here you can your message id property to make it dynamic
message.chatObjects= chatDictionary.filter { (dictionaryTemp:[String : String]) -> Bool in
return dictionaryTemp["message_id"] == "Tva9d2OJyWHRC1AqEfKjclRwXnlRDQ"
}
presentController(withName: "ChatDetailController", context: message)
}
如果我的文档定义为 我希望能够使用MongoTemplate进行查询,以便传递一个值列表,如[cool]、[Aspective],作为回报,我将获得上面的第一个集合,而不是第二个集合。就我想要实现的目标而言,目前的美元条件似乎还不够。我试过使用$all条件,在Mongo控制台上它可以根据我的需要工作,但在我的代码中有些东西不起作用,我的查询要花很长时间才能详细说明。相反,有了$in运算符,我的代码
问题内容: 我需要使用jquery动态地将数据传递到我的选择列表。我在控制台中看到了该数据,但列表为空。您能帮我找到解决方案吗? 我的选择清单 问题答案: 将您的JavaScript代码更改为此
我有一些RadioButton在片段A,,和一些RadioButton在片段B我希望当这些(FragmentA)之一,在FragmentB禁用所有单选按钮.相同的活动主机这些片段。 片段A中的事件单击单选按钮:
我的要求是对输入文件中给出的数据运行测试。为了实现,我正在使用 请帮助确定我做错了什么。
问题内容: 我已经使用sed编写了一个小脚本来对此进行转换: 变成这样的csv文件格式: 我现在想将每个数字除以1.000.000,这样它们就不代表µV,而是代表V和W而不是µW,这样一眼便可以轻松理解它们。当然,一旦我在libre office calc中打开此csv之后,便可以手动执行此操作,但是我想使其自动化。 所以我发现,我可以在sed之间调用外部程序,如下所示: 这样我就可以通过以下方式
问题内容: 我有一个基于Windowsservercore的Docker文件,该文件托管了ASP.net Core Web应用程序。 Docker文件中的片段 使用以下命令运行docker映像时,我试图传递将传递给exe端点的可选参数。 问题答案: 您需要拥有一个CMD https://docs.docker.com/engine/reference/builder/#/cmd 或ENTRYPOI