Как проверить, находится ли строковое значение в массиве - PullRequest
0 голосов
/ 20 февраля 2020

Я застрял на небольшой проблеме, но не было логики c, поэтому нужна ваша помощь.

У меня есть утверждение if:

    func showButton() {
        if viewModel.model.id == Constants.Identifiers.showId[<any>] {
            //do this. Like show the button
        } else {
            //do that. Like hide the button
        }
    }

Так что проблема в том, что Я хочу проверить, имеет ли viewmodel.model.id любое из значений в Constants.Identifiers.showId [] model.id - это строка, а Identifiers.showId [] - это массив строк.

Я знаю это легко, но ... спасибо за помощь!

Ответы [ 2 ]

4 голосов
/ 20 февраля 2020

Вы можете использовать array.contains(_:) метод. Ссылка на документацию

func showButton() {
    if Constants.Identifiers.showId.contains(viewModel.model.id) {
        // do this. Like show the button
    } else {
        // do that. Like hide the button
    }
}
3 голосов
/ 20 февраля 2020

попробуйте

if Constants.Identifiers.showId.contains(viewModel.model.id) {

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...