2016-03-07 101 views
1

我不知道是否有方法从服务器加载反应组件模板?Reactjs服务器端模板

当我使用Vuejs或任何其他js库时,我实际上必须将代码添加到视图中,并且在由服务器呈现它之后,javascript开始运行并完成其余任务。例如,我可以在Symfony应用程序中输入类似于以下内容的字符串:{{ 'header.article_title'|trans }}并将其翻译完成。

但是,由于模板被硬编码为reactjs组件,我无法再使用php/symfony/twig函数。所以,我想知道是否有办法从服务器获取模板,如AngularJS templateURL -option。

+0

https://github.com/mhart/react-server-example? – azium

+0

'webpack chunks'会为你工作吗? https://webpack.github.io/docs/code-splitting.html – Skay

回答

1

最后得到如何做我需要的。

我意识到有可能没有通过URL的实际文件。所以,如果我需要一个/react/component/Article.js它可能是一个行动的网址。

所以,我创建了一个新的捆绑包,添加一个控制器,并使用一个动作来查看单个反应组件。

骨架代码如下所示:

/** 
* Class ComponentController 
* @package ReactjsBundle\Controller 
* 
* @Route("/react/component") 
*/ 
class ComponentController extends Controller 
{ 
    /** 
    * @Route("/Article.js") 
    */ 
    public function articleAction() 
    { 
     $resp = new Response(); 
     $resp->headers->set('Content-Type', 'text/javascript'); 

     return $this->render('ReactjsBundle:Component:article.html.twig', [], $resp); 
    } 
}