#javascript #jquery #reactjs
#javascript #jquery #reactjs
Вопрос:
Я хочу сотрудничать с react с jquery, как показано ниже
предположим, у меня есть это текстовое поле, которое создается с помощью react
var textarea = React.createClass({
render : function(){
return <textarea id="mytextarea"></textarea>;
}
});
Я хочу, чтобы эта текстовая область автоматически изменялась, применяя плагин с именем «autosize», поэтому я сделал это;
$("#mytextarea").autosize();
ReactDOM.render(<textarea/>, document.getElementById('form'));
примечание: если я создам обычную текстовую область (не с помощью компонента react DOM), плагин заработает.
но не с компонентом react.
Комментарии:
1. попробуйте вместо id использовать
className="mytextarea"
и".mytextarea"
для jQuery
Ответ №1:
Текстовая область не отображается во время вызова $("#mytextarea").autosize();
, поэтому на самом деле она еще не существует. Возможно, вам удастся вызвать .autosize()
componentDidMount()
метод React, который будет вызван после рендеринга вашего компонента.
var textarea = React.createClass({
componentDidMount: function() {
$("#mytextarea").autosize();
},
render : function(){
return <textarea id="mytextarea"></textarea>;
}
});