2017-10-11 65 views
0

我想知道將PHP從MySQL服務器獲取的數據傳遞給React組件的最佳方式是什麼。目前我知道的唯一方法就是簡單地將變量回顯爲prop價值,但是我覺得肯定有比這更好的方式,因爲它感覺非常黑客。將PHP數據傳遞給ReactJS

我是React的新手,一直在尋找一個API來使用,但一直未能找到它(如果存在)。我也查看過React文檔,但它也沒有提供任何信息。

下面是我到目前爲止一直在做一個非常簡單的例子:

<?php 
class User { 
    //Name returned from mysql query. 
    public $name = "Steve"; 
} 

$user = new User; 
?> 

<!DOCTYPE html> 
    <body> 
     <div id="greeting-div"></div> 
    </body> 
</html> 

而我的陣營組件看起來就像這樣:

var Greeting = React.createClass({ 
    render: function() { 
     return (
     <p>Hello, {this.props.name}</p> 
    ) 
    } 
    }); 

    ReactDOM.render(
    <Greeting name="<?php echo json_encode($user->name); ?>"/>, 
    document.getElementById('greeting-div') 
); 

有沒有更好的方式來做到它或者這是正確的方式?

回答

1

您可以添加一個名爲 「名」 變量喜歡這樣

ReactDOM.render(
    <Greeting name={name}/>, 
    document.getElementById('greeting-div') 
); 

<!DOCTYPE html> 
    <script> 
    var name = "<?php echo json_encode($user->name); ?>"; 
    </script> 
    <body> 
     <div id="greeting-div"></div> 
    </body> 
</html> 

和編輯JS文件