class SomeContextProvider extends React.Component {
getChildContext() {
return {some: "context"}
}
render() {
return React.Children.only(this.props.children)
}
}
return (
<El />
)
render() {
return this.renderChildren(this.props);
}
const app = express()
// раздача статики (css, fonts, images, ...)
app.use('/static/', express.static(__dirname + '/../../public/static'))
app.get('/*', (req, res) => {
res.send(/* ваш index.html */)
})
class MyElement extends Component {
componentDidMount() {
// начиная с этого момента у вас есть доступ к
// this.container - это ссылка на DOM ноду (или реакт-элемент)
jQuery(this.container) // например используем джейквери
// или вызовем метод элемента
// выведет в консоль 'Wow, so super!'
this.componentWithMethod.mySuperMethod()
}
handle3dPartyContainerRef = node => {
this.container = node
}
handleComponentRef= node => {
this.componentWithMethod= node
}
render() {
return (
<div>
<h1>Hello!</h1>
<div ref={this.handle3dPartyContainerRef} />
<ComponentWithMethod ref={this.handleComponentRef} />
</div>
)
}
}
class ComponentWithMethod extends Component {
mySuperMethod = () => {
// Вот так можно добавить метод к элементу
// вызывать его можно если получить ссылку на установленный в DOM элемент
console.log('Wow, so super!')
}
render() {
return (
<span>just a node</span>
)
}
}