Проблема здесь
let name = currencies[names].currencyName
, поскольку currencies
- это массив ([CurrencyModel]
), для индексации ему необходимо целочисленное значение, например currencies[0]
, но вместо этого вы отправляете names
, который равентип CurrencyModel
Вам нужно
var namesArray = [String]()
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
namesArray = currencies.map{$0.currencyName}
}
ИЛИ
currencies.forEach { namesArray.append($0.currencyName)}
ИЛИ
for names in currencies { // not perferred
namesArray.append(names.currencyName)
}
//
Редактировать: , затем использовать
namesArray = Array(currencies.map{$0.currencyName}.prefix(1))