我有一个同时使用Blaze和React的应用程序,并且我们正在缓慢地重构Blaze,但在可预见的将来,我们仍然会同时使用这两个应用程序。
我目前有一个简单的烈焰模板,该模板已更改为React组件。模板看起来像这样:
<template name="myTemplate">
<div>
<h1>{{someTitle}}</h1>
<div>
{{> Template.contentBlock}}
</div>
</div>
</template>
等效组件当前如下所示:
export default class MyComponent extends React.Component {
static propTypes = {
someTitle: PropTypes.string.isrequired
}
render () {
return (
<div>
<h1>{this.props.someTitle}</h1>
<div>
{this.props.children}
</div>
</div>
)
}
}
另一个HTML文件中模板的用法如下:
<div>
Some Stuff
<div>
{{#myTemplate someTitle="Some Title"}}
<div>
More stuff within to go within my template
</div>
{{/myTemplate}}
</div>
</div>
我目前想做的是摆脱myTemplate
并将其替换为MyComponent
。通常,只需插入{{> React component=MyComponent someTitle="Some Title"}}
即可轻松完成此操作,但是在这种情况下,由于模板中包含的内容可能必须作为组件的子代传递,因此我不确定应该如何完成。
问题就变成了,如何将要在模板中呈现的内容传递给React组件?有什么办法解决吗?