React Native Web - Управляйте тегом html, сгенерированным View? - PullRequest
4 голосов
/ 14 февраля 2020

У меня есть собственный веб-проект. В какой-то момент я бы хотел, чтобы мой View вместо генерации <div> генерировал элемент <label>.

Есть ли способ контролировать это? Я надеюсь на какой-то атрибут htmlTag, который игнорируется, если он не компилируется для среды браузера.

Ответы [ 2 ]

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

Была component опора, но она удалена в пользу accessibilityRole ( Удалить component опора ).

Вы можете использовать accessibilityRole чтобы указать тег label и даже создать собственный элемент, используя его:

function Label({ text }) {
  return <View accessibilityRole="label">{text}</View>
}

, а затем использовать его следующим образом:

export default class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <View>
          <Label text="Test input:"/>
          <TextInput name="test-input"/>
        </View>
      </View>
    );
  }
}

Проверьте этот рабочий перекус Экспо: https://snack.expo.io/@clytras / изменение-н-веб-ДИВ-таг

0 голосов
/ 19 февраля 2020

Как насчет создания собственной обертки View? Он может проверить, в какой среде он работает, а затем, если он находится в браузере, вы можете вместо этого вернуть элемент метки.

...