swift error: Value of type _ has no member _
swift error: Value of type _ has no member _
how do I fix this error? xcodes-13
这是我使用 api 的代码:
struct everything: Codable{
let topic: String
let content: String
let category: String
let time: String
let price: String
let prize: String
}
struct parsingss : Codable {
let scrims: [everything]
}
@IBOutlet weak var prizeLabel: UILabel!
@IBOutlet weak var priceLabel: UILabel!
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var categoryLabel: UILabel!
@IBOutlet weak var ContentLabel: UILabel!
@IBOutlet weak var TopicLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
if let url = URL(string: "http://{Local-Host}/post") {
URLSession.shared.dataTask(with: url) { data, response, error in
if let data = data {
let jsonDecoder = JSONDecoder()
do {
let parsedJSON = try jsonDecoder.decode(parsingss.self, from: data)
print(parsedJSON)
DispatchQueue.main.async {
self.TopicLabel.text = parsedJSON.topic
self.ContentLabel.text = parsedJSON.content
self.categoryLabel.text = parsedJSON.category
self.timeLabel.text = parsedJSON.time
self.priceLabel.text = parsedJSON.price
self.prizeLabel.text = parsedJSON.prize
}
}
catch {
print(error)
}
}
}.resume()
}
}
}
"error : Value of type 'testViewController.parsingss' has no member 'topic'"
回复一些代码会更好。感谢开发者。
没有“尝试在标签中打印”,结果确实会输出。它在一个数组中:
[ scrims: {
"topic": "tv",
"content": "done",
"category": "gg",
"time": "10pm",
"price": "Rs.100",
"prize": "Rs.1000",
"id": 1
},
{
"topic": "1",
"content": "d1",
"category": "g1",
"time": "10pm",
"price": "Rs.11",
"prize": "R1",
"id": 2
} ]
谢谢!
您试图在未指定索引的情况下从数组对象分配下标值。
试试这个:
class ViewController: UIViewController {
@IBOutlet weak var prizeLabel: UILabel!
@IBOutlet weak var priceLabel: UILabel!
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var categoryLabel: UILabel!
@IBOutlet weak var ContentLabel: UILabel!
@IBOutlet weak var TopicLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
if let url = URL(string: "http://{Local-Host}/post") {
URLSession.shared.dataTask(with: url) { data, response, error in
if let data = data {
do {
let parsedJSON = try JSONDecoder().decode(parsingss.self, from: data)
print(parsedJSON)
DispatchQueue.main.async {
self.TopicLabel.text = parsedJSON.scrims[0].topic
self.ContentLabel.text = parsedJSON.scrims[0].content
self.categoryLabel.text = parsedJSON.scrims[0].category
self.timeLabel.text = parsedJSON.scrims[0].time
self.priceLabel.text = parsedJSON.scrims[0].price
self.prizeLabel.text = parsedJSON.scrims[0].prize
}
}
catch {
print(error)
}
}
}.resume()
}
}
}
how do I fix this error? xcodes-13
这是我使用 api 的代码:
struct everything: Codable{
let topic: String
let content: String
let category: String
let time: String
let price: String
let prize: String
}
struct parsingss : Codable {
let scrims: [everything]
}
@IBOutlet weak var prizeLabel: UILabel!
@IBOutlet weak var priceLabel: UILabel!
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var categoryLabel: UILabel!
@IBOutlet weak var ContentLabel: UILabel!
@IBOutlet weak var TopicLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
if let url = URL(string: "http://{Local-Host}/post") {
URLSession.shared.dataTask(with: url) { data, response, error in
if let data = data {
let jsonDecoder = JSONDecoder()
do {
let parsedJSON = try jsonDecoder.decode(parsingss.self, from: data)
print(parsedJSON)
DispatchQueue.main.async {
self.TopicLabel.text = parsedJSON.topic
self.ContentLabel.text = parsedJSON.content
self.categoryLabel.text = parsedJSON.category
self.timeLabel.text = parsedJSON.time
self.priceLabel.text = parsedJSON.price
self.prizeLabel.text = parsedJSON.prize
}
}
catch {
print(error)
}
}
}.resume()
}
}
}
"error : Value of type 'testViewController.parsingss' has no member 'topic'"
回复一些代码会更好。感谢开发者。
没有“尝试在标签中打印”,结果确实会输出。它在一个数组中:
[ scrims: {
"topic": "tv",
"content": "done",
"category": "gg",
"time": "10pm",
"price": "Rs.100",
"prize": "Rs.1000",
"id": 1
},
{
"topic": "1",
"content": "d1",
"category": "g1",
"time": "10pm",
"price": "Rs.11",
"prize": "R1",
"id": 2
} ]
谢谢!
您试图在未指定索引的情况下从数组对象分配下标值。
试试这个:
class ViewController: UIViewController {
@IBOutlet weak var prizeLabel: UILabel!
@IBOutlet weak var priceLabel: UILabel!
@IBOutlet weak var timeLabel: UILabel!
@IBOutlet weak var categoryLabel: UILabel!
@IBOutlet weak var ContentLabel: UILabel!
@IBOutlet weak var TopicLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
if let url = URL(string: "http://{Local-Host}/post") {
URLSession.shared.dataTask(with: url) { data, response, error in
if let data = data {
do {
let parsedJSON = try JSONDecoder().decode(parsingss.self, from: data)
print(parsedJSON)
DispatchQueue.main.async {
self.TopicLabel.text = parsedJSON.scrims[0].topic
self.ContentLabel.text = parsedJSON.scrims[0].content
self.categoryLabel.text = parsedJSON.scrims[0].category
self.timeLabel.text = parsedJSON.scrims[0].time
self.priceLabel.text = parsedJSON.scrims[0].price
self.prizeLabel.text = parsedJSON.scrims[0].prize
}
}
catch {
print(error)
}
}
}.resume()
}
}
}