How to pass data in server side rendering to reactjs component from node

Learner

I am very new to reactJs and just started to learn the features of reactJS. I am trying to figure out a way to pass the value from nodeJS to reactJS via server side rendering concept.

In the below example, I was able to define a react component and add it in server and render it in UI but I am not sure how to pass the data to the component that can be used inside the component render function.

client.js

var React=require('react');
var ReactDOM=require('react-dom');
var Component=require('./Component.jsx');


ReactDOM.render(
    React.createElement(Component),document
);

Component.jsx

var React=require('react'),
Request=require('superagent')


module.exports = React.createClass({
getInitialState: function () {
    return {

    };
  },
  componentWillMount: function () {

  },

  componentDidMount: function() {
    clearInterval(this.intervalID)
  },

  _handleClick: function () {
    alert('You clicked!')
  },

    render:function(){
    return(
        <html>
        <head>
            <title> ReactJS - demo </title>
            <link rel='stylesheet' href='/style.css'/>
        </head>
        <body>
        <div>
            <h1>react js testing</h1>
            <p>This is so cool</p>
            <button onClick={this._handleClick}>Click Me!</button>
        </div>
        <script src='/bundle.js'/>
        </body>
        </html>
        );
    }

});

Server.js

require('babel-register')({
    presets:['react']
});
var express = require('express');
var app=express();
var React=require('react');
var ReactDOMServer=require('react-dom/server');
var Component=require('./Component.jsx');

app.use(express.static('public'));
app.get('/',function(request,response){
    var html=ReactDOMServer.renderToString(
        React.createElement(Component)
    )
    response.send(html)
});

var PORT=4444;
app.listen(PORT,function(){
    console.log("Node js listening in port:"+ PORT);
})

Update 1:

I am now able to pass the value to the server side rendered component as below

React.createElement(Component,{object:...})

Now the server side setup works fine.

I need to make this {object:...} available in my client.js also for client side functionality to work. Any idea how to get this value in client.js?

Andrew Z
React.createElement
ReactElement createElement(
    string/ReactClass type,
    [object props],
    [children ...]
)

Create and return a new ReactElement of the given type. The type argument can be either an html tag name string (eg. 'div', 'span', etc), or a ReactClass (created via React.createClass).

In the your version in the

React.createElement(Component)

u need use something like

React.createElement(Component, {obj: obj, ...: ...})

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

How to pass data from child component to its parent in ReactJS?

From Java

ReactJS server-side rendering vs client-side rendering

From Dev

ReactJs: How to pass the initial state while rendering a component?

From Dev

Pass data from client side to server side

From Dev

How to pass exception from Server to Client side in GWT RPC

From Dev

ReactJS Server side rendering in Flask

From Dev

How to receive data from an AJAX POST function at the server side with Node.js?

From Dev

Fetching data before rendering server side

From Dev

How to pass data from an element to an action in ReactJS?

From Dev

How to pass client-side parameters to the server-side in Angular/Node.js/Express

From Dev

How can I prevent a component from rendering before data is loaded?

From Dev

React - server side component rendering

From Dev

ReactJS using cookie while rendering on server side

From Dev

Server side rendering with async data fetch

From Dev

ReactJs.NET - ScriptBundling with Server-side component rendering

From Dev

How to pass data from one component to another while using API in reactjs

From Dev

Node.js Rendering big amount of JSON data from the server

From Dev

Pass data from client side to server side

From Dev

How to pass data from an element to an action in ReactJS?

From Dev

React - server side component rendering

From Dev

ReactJs.NET - ScriptBundling with Server-side component rendering

From Dev

reactJs - pass data to nested component

From Dev

How to render component in react server side with async data

From Dev

Angular 2 - how to pass data to a child component without rendering the child component twice?

From Dev

Node Server side does not get data from this.http.delete

From Dev

Server-side rendering with Node/React. How do I fetch the data?

From Dev

React Server Side Rendering App - how to update meta data

From Dev

Vuejs how to pass component data from caller

From Dev

How to pass data from a component to an Instance in Vue

Related Related

  1. 1

    How to pass data from child component to its parent in ReactJS?

  2. 2

    ReactJS server-side rendering vs client-side rendering

  3. 3

    ReactJs: How to pass the initial state while rendering a component?

  4. 4

    Pass data from client side to server side

  5. 5

    How to pass exception from Server to Client side in GWT RPC

  6. 6

    ReactJS Server side rendering in Flask

  7. 7

    How to receive data from an AJAX POST function at the server side with Node.js?

  8. 8

    Fetching data before rendering server side

  9. 9

    How to pass data from an element to an action in ReactJS?

  10. 10

    How to pass client-side parameters to the server-side in Angular/Node.js/Express

  11. 11

    How can I prevent a component from rendering before data is loaded?

  12. 12

    React - server side component rendering

  13. 13

    ReactJS using cookie while rendering on server side

  14. 14

    Server side rendering with async data fetch

  15. 15

    ReactJs.NET - ScriptBundling with Server-side component rendering

  16. 16

    How to pass data from one component to another while using API in reactjs

  17. 17

    Node.js Rendering big amount of JSON data from the server

  18. 18

    Pass data from client side to server side

  19. 19

    How to pass data from an element to an action in ReactJS?

  20. 20

    React - server side component rendering

  21. 21

    ReactJs.NET - ScriptBundling with Server-side component rendering

  22. 22

    reactJs - pass data to nested component

  23. 23

    How to render component in react server side with async data

  24. 24

    Angular 2 - how to pass data to a child component without rendering the child component twice?

  25. 25

    Node Server side does not get data from this.http.delete

  26. 26

    Server-side rendering with Node/React. How do I fetch the data?

  27. 27

    React Server Side Rendering App - how to update meta data

  28. 28

    Vuejs how to pass component data from caller

  29. 29

    How to pass data from a component to an Instance in Vue

HotTag

Archive