Реагировать автоматически RTL ввода текста - PullRequest
0 голосов
/ 01 декабря 2018

Я хочу, чтобы все мои компоненты, использующие input[type=text], автоматически получали направление RTL или LTR на основе пользовательского ввода.

В старые времена (2 или 3 года назад) я использовал jQuery, чтобы выбрать все эти входы ипримените мой скрипт как this .Но как лучше всего реализовать эту функцию в React?

1 Ответ

0 голосов
/ 01 декабря 2018

создайте свою обертку вокруг компонента Input и сделайте свою логику внутри этого компонента :) Затем везде в коде используйте ваш <CustomInput /> вместо <input ...>.

РЕДАКТИРОВАТЬ:

, включающий пример кода обертывания элемента ввода:

import React from "react";

class CustomInput extends React.Component {
    render() {
        const {onChange, ...otherProps} = this.props;
        // Please provide onChange callback to make this Input element "Controlled"
        // otherProps are there for things like default value etc. :)
        return(
            <input type="text" onChange={onChange} />
        );
    }

}

export default CustomInput;

, и если вы не будете использовать какие-либо методы жизненного цикла, вы можете даже реализовать этот компонент какфункция

import React from "react";

const CustomInput = ({onChange, ...otherProps}) => (
    <input type="text" onChange={onChange} />;
);

export default CustomInput;
...