React.js обработчик onclick не работает

0

Я использую response.js в качестве библиотеки шаблонов в приложении node.js. Я использую синтаксис jsx для своих реагирующих компонентов. У меня есть маршрут, похожий на /entity, который отображает файл entity.jsx (это представление). У меня есть следующий код в файле entity.jsx. Я пытаюсь вызвать onclickhandler в своем коде и его не работает. Я не показываю его явно с помощью React.render, но компонент отображается в браузере, когда я нажимаю localhost: /entities, но обработчик onclick не запускается.

  var MyComponent = React.createClass({
    alertMessage: function() {
       alert(this.props.name);                             
   },
    render: function () {
      return (
       <div onClick={this.alertMessage}>
        Hello {this.props.name}
       </div>
     );
    }
 });

Примеры, которые я видел в Интернете, отображают jsx-скрипт, встроенный внутри html и компонент, отображаемый внутри тега html div, но я пытаюсь использовать response.js в приложении node.js. Я не хочу отображать его внутри тега html, но компонент должен отображать на основе URL-адреса и должен быть динамическим

У меня есть следующий фрагмент кода в моем файле index.js в моем приложении-узле. Я ударил объекты "сущности" через файл index.js, который отображает объекты представления.

app.get('/entities', function(req, res) {
  res.render('entities', {
    title: 'Entities - Turkey Disclosure',
    name: 'Entities',
    selection: 'header-entities'
  });
});
  • 0
    Это не работает Очевидно, это верно только для синтаксиса ES6
  • 0
    ваш пример работает , как вы ожидаете скрипку
Показать ещё 3 комментария
Теги:

1 ответ

1

Если вы правильно React.renderToString() вы используете React.renderToString() для рендеринга в приложении узла. React не вставляет onClick и другие операторы событий непосредственно в разметку. Если вы хотите сохранить эти события, вы должны называть React.render() на узле, который уже имеет разметку, предоставленную сервером. React сохранит его и только присоединяет обработчики событий, позволяя вам иметь очень эффективный опыт первой загрузки.

Там хорошая статья, объясняющая разницу между тремя методами рендеринга в React.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню