これを行うには、いくつかの調整が必要です。
まず、react-domをインポートします。
import ReactDOM from 'react-dom';
第2に、コンポーネントのレンダリングメソッドの前にcomponentDidMountライフサイクルメソッドを追加します。これは、react-domを使用して、指定した 'dropdown'を指定したrefを使用してselect要素を取得し、上記のSanathが指摘したjQueryメソッドを使用します。
componentDidMount() {
var element = ReactDOM.findDOMNode(this.refs.dropdown)
$(element).ready(function() {
$('select').material_select();
});
}
render() {
...
第3に、コンポーネントにコードを追加します。注:(1)最初のオプション要素から 'selected'が削除されました。(2)select要素に 'dropdown'という名前のrefが追加されました。(3)classの代わりにclassNameが使用されました。
render() {
return (
<div className="input-field col s12">
<select ref="dropdown" defaultValue="1">
<option value="" disabled>Choose your option</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select>
<label>Materialize Select</label>
</div>
);
}
あなたはWebPACKのを使用している場合最後に、あなたはjQueryのでは、いくつかの特定のメソッドを指すようにwebpack.ProvidePluginを使用する必要があります。
var webpack = require("webpack");
module.exports = {
...
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery",
"window.jQuery": "jquery",
"Hammer": "hammerjs/hammer",
createDayLabel: "jquery",
createWeekdayLabel: "jquery",
activateOption: "jquery",
leftPosition: "jquery"
})
]
webpack/serverをリロードしてください。