私は ReactJS を初めて使用し、NodeJS と Express を使用して小さな SPA アプリケーションを構築しています。私の要件は、最初のページの読み込みで mysql からデータを読み込むことです。スクリプトは次のようになります。
/** @jsx React.DOM */
var React = require('react');
var Request = require('request');
var HomePage = React.createClass({
getInitialState: function() {
return {
name: "Batman"
};
},
componentDidMount: function() {
var obj = this;
Request('http://ajaxtown.com/playground/data.php', function (error, response, body) {
if (!error && response.statusCode == 200) {
var info = JSON.parse(body);
console.log(info[0]);
obj.setState({
name: info[0].firstName
})
}
});
},
getDefaultProps: function () {
return {
size: 100
}
},
handleClick : function() {
console.log("Clicked");
this.setState({
name : "bob"
});
},
render: function () {
return (
<h2 onClick={this.handleClick}>{this.state.name}</h2>
);
}
});
module.exports.HomePage = HomePage;
このスクリプトは機能しますが、ページの読み込み後に問題が発生し、リクエストがサーバーに送信され、UI がレスポンスで更新されます。これはSEOには役立たないと思います。代わりに、最初にデータを利用できるようにしてから、UI をレンダリングします。
次に、node-mysqlも使用しようとしましたが、同形の JavaScript アプリを作成しているため、資格情報が表示されます。それだけでなく、ブラウザは TCP/IP を使用できないため、それでも動作しません。それで、それは学んだ教訓でした。
ブログ アプリケーションを作成する必要がある場合、非常に動的になります。このような場合、SEOはどのように機能しますか?または、同形の JavaScript は静的コンテンツのみを意味するのでしょうか?
私は概念と少し混同されています。誰か私を案内してもらえますか?