Не относитесь слишком серьезно к «СЛЕДУЕТ». IE в какой-то момент использовал только 2 одновременных соединения. Даже в этот момент была возможность снять ограничение (через «взломать»).
В настоящее время ограничение ограничено 8, в большинстве браузеров (включая Firefox, сафари). IE8 имеет 6 соединений на каждый хост.
Как вы можете себе представить, 2 подключения на хост слишком малы. Вы не смогли бы загрузить страницу с хоста, у вас было 2 текущих загрузки с одного и того же хоста!
И если вы используете соединение: заголовок keep-alive, все пять ваших изображений будут загружаться в одном и том же TCP-соединении, а не прекращать соединение и переделывать его, в случае соединения: Закрыть.
Это неэффективно, так как трехстороннее TCP-соединение должно быть переделано каждый раз, когда вы запрашиваете изображение!
В HTTP 1.1 все соединения поддерживаются в живых, если не указано иное следующий заголовок: Соединение: закрыть
С другой стороны, у вас также есть конвейер HTTP (см. ответ Майка Кэрона), который не дожидается возврата одного запроса перед отправкой другого. Это реализовано firefox (как вы можете увидеть / отключить в about: config), но это другая проблема из Maximum Connections для каждого хоста.
Также: Если вы не используете постоянные соединения с конвейерной обработкой, вы будете создавать несколько соединений. Отправка одного запроса перед закрытием предыдущего. Это блокировалось бы из-за предела максимальных соединений.
Вы можете проверить тип шрифта таким же образом и перемещаться также вы можете сделать в jsx. но это намного чище
navigatetoPage(data){
const page = data.type == "course" ? "UnitListing" : "ChapterListing";
this.props.navigation.navigate(page, {
id: data.id,
type: data.type
})
}
<TouchableOpacity
style={st.btn} onPress={() => this.navigatetoPage(data)}>
<Text style={{ color: "#fff" }}>View Course</Text>
</TouchableOpacity>