У меня этот код в файле index.js приложения.Javascript ReactJs Поместите JsCss и компонент во внешние файлы
Как вы можете видеть, у него есть некоторые стили, а также компонент кнопки.
Вот полный код:
import React from 'react';
import ReactDOM from 'react-dom';
//Styles Here
var buttonStyle1 = {
margin: '10px 10px 10px 0',
padding: '4px 20px',
border: '1px solid grey'
};
var buttonStyle2 = {
margin: '10px 10px 10px 0',
padding: '4px 10px',
border: '1px solid blue',
borderRadius: 0
};
//Component Here
var Button = React.createClass({
render: function() {
return (
<button
name={this.props.name}
className={this.props.className}
style={buttonStyle1}
onClick={this.handleClick}>{this.props.label}
</button>
);
},
handleClick: function() {
alert('Button pressed name is: '+ this.props.name);
}
});
module.exports = Button;
ReactDOM.render(
<div>
<Button name="button1" label="Button" className="btn btn-success" />
<Button name="button200" label="Label Here" className="btn btn-default" />
<Button name="button20" label="Label again" className="btn btn-default" />
</div>,
document.getElementById('root')
);
Что я урожденная сделать, это добавить ту часть, где он говорит, // Стили Здесь во внешний JS файл и тот же к той части, где он говорит, что // Компонент Здесь так они находятся на внешних файлах.
Как это сделать?
**//Update:**
Вот текущий код теперь все в том же уровне, что и index.js
//index.js:
import React from 'react';
import ReactDOM from 'react-dom';
import Button from './Buttons';
ReactDOM.render(
<Button style={{fontSize: '14px'}} name='Hi' label='button'/>,
document.getElementById('root')
);
//ButtonStyles.js
module.exports = {
buttonStyle1 : {
margin: '10px 10px 10px 0',
padding: '4px 20px',
border: '1px solid grey'
};
buttonStyle2 : {
margin: '10px 10px 10px 0',
padding: '4px 10px',
border: '1px solid blue',
borderRadius: 0
};
}
//Buttons.js
import React from 'react';
import ReactDOM from 'react-dom';
var Button = React.createClass({
render: function() {
return (
<button
name={this.props.name}
className={this.props.className}
style={this.props.style}
onClick={this.handleClick}>{this.props.label}
</button>
);
},
handleClick: function() {
alert('Button pressed name is: '+ this.props.name);
}
});
Нет кнопки не показывает
Следуйте вашим инструкциям, и вот мой index.js: import React from 'react'; Импорт ReactDOM из «реагирования»; кнопка импорта из './components/Buttons'; import Style from './compoents/ButtonStyles'; ReactDOM.render (
, потому что вы не передаете никаких значений реквизита, попробуйте следующее: 'ReactDOM.render (
, так как вы хотите передать стиль также через реквизиты, тогда вы необходимо изменить эту строку в компоненте кнопки: style = {buttonStyle1} вместо этого напишите это: 'style = {this.props.buttonStyle1}' –