2016-08-01 65 views
0

我在我的React + Meteor项目中使用帐户UI流星软件包,并且想要使用属性align="right"呈现loginButtons模板。在Blaze中,代码只是{{> loginButtons align="right"}},但是我对如何在React中添加此属性感到不知所措。如何更改React组件内的Blaze模板的属性

import React, { Component } from 'react'; 
import ReactDOM from 'react-dom'; 
import { Template } from 'meteor/templating'; 
import { Blaze } from 'meteor/blaze'; 

export default class AccountsUIContainer extends Component { 
    componentDidMount() { 
    this.view = Blaze.render(Template.loginButtons, // How do I give loginButtons `align="right`? 
    ReactDOM.findDOMNode(this.refs.container)); 
    } 

    componentWillUnmount() { 
    Blaze.remove(this.view); 
    } 

    render() { 
    return <span ref="container" />; 
    } 
} 

我认为Blaze.renderWithData()可能是解决方案的一部分,但我用这种方法测试至今没有工作。我也认为人们已经创建了在React中使用Blaze模板的解决方案,但我不确定这些替代解决方案是否是在Meteor 1.4中解决这个问题的“正确”方法。

回答

1

答案就在文档中。首先meteor add gadicc:blaze-react-component,然后在组件

import React from 'react'; 
import Blaze from 'meteor/gadicc:blaze-react-component'; 

const App =() => (
    <div> 
    <Blaze template="loginButtons" align="right" /> 
    </div> 
);