Я использую пакет среагировать-машинистке для фильтрации через и введите текст компонент выглядит следующим образом:Повторные вызовы реагировать-машинистка с использованием React.js
Typing = React.createClass({
getInitialState: function() {
return { textIndex: 0 };
},
next: function() {
// increment the textIndex by one
this.setState({ textIndex: this.state.textIndex + 1});
//this.setState({visible: false});
},
render: function() {
const docs = '#one';
return (
<div>
<div className="TypistExample">
<Typist className="TypistExample-header" avgTypingSpeed={15000} startDelay={1000}
onTypingDone={this.next} cursor={{show: false}}>
<h1><a href={docs}>{typedtext[this.state.textIndex].text}</a></h1>
</Typist>
<p>{this.state.textIndex}</p>
<p>{typedtext[this.state.textIndex].text}</p>
</div>
</div>
);
}
});
var typedtext = [
{id: 'name', text: 'Some Name'},
{id: 'growth', text: 'Some Growth'},
{id: 'development', text: 'Some Dev'},
{id: 'analtyics', text: 'Some Lytics'},
];
Я надеюсь, перебирать массив, с новой строкой текста, которая будет напечатана, когда закончится старый текст. Однако, как и сейчас, это останавливается после первой строки текста. Я знаю, что итерация, однако, поскольку эти строки:
<p>{this.state.textIndex}</p>
<p>{typedtext[this.state.textIndex].text}</p>
показывают, что (по крайней мере, один раз).
Как это исправить?
Идея состоит в том, что текст в вашем массиве печатается в той же строке, заменяя все, что было напечатано до того, как вы хотите, чтобы каждый элемент массива был напечатан на новой строке один за другим? – deowk