Как вычеркнуть текст с помощью onHlick - PullRequest
0 голосов
/ 22 февраля 2020

Я пытаюсь сделать так, чтобы кнопка зачеркнула текст с помощью 'line-through'. Я не уверен, как подключить это к кнопке.

'' '

import React, { useState } from 'react';
import { StyleSheet, Text, View, Button } from 'react-native';

export default function App() {
  const [name, setName] = useState('shaun')

  const clickHandler = () => {
    setName('shaun (CROSSED OUT)');
  }

  return (
    <View style={styles.container}>
      <Text>My name is {name}</Text>
      <Text></Text>
      <View style={styles.buttonContainer}>
        <Button title='update state' onPress={clickHandler} />
      </View>
    </View>
  );
}

1 Ответ

2 голосов
/ 22 февраля 2020

Вы можете использовать переменную состояния, чтобы отслеживать ее.

быстрый пример -

import React, { useState } from 'react';
import { StyleSheet, Text, View, Button } from 'react-native';

export default function App() {
  const [name, setName] = useState('shaun')
  const [crossedOut, setCrossedOut] = useState(false) // extra state variable

  const clickHandler = () => {
    setName('shaun (CROSSED OUT)');
    setCrossedOut(true) // set it to true on click
  }

  return (
    <View style={styles.container}>
      {/* apply style only if crossedOut is true */}
      <Text style={crossedOut && {textDecorationLine: 'line-through'}}>My name is {name}</Text> 
      <View style={styles.buttonContainer}>
        <Button title='update state' onPress={clickHandler} />
      </View>
    </View>
  );
}
...