vhtml / webpack-MultiplePage

基于webpack的前端工程化方案(自动入口配置及后端模板)
303 stars 56 forks source link

你这里artTemplate是当做后台模板用的么? #4

Closed njleonzhang closed 8 years ago

njleonzhang commented 8 years ago

RT

vhtml commented 8 years ago

对的,很多前端模板同时也支持node服务端使用,这就是所谓的前后端共用一套模板

njleonzhang commented 8 years ago

@vhtml 我们后端用的Django,所以需要输出后端模板。从你这个项目中确实可以得到一些启示。感谢。 另外,这样的做法,实际上最后的输出是后台的模板。我有一个另外的想法,就是输出前台模板,页面开发时在页面里定义假的数据,最后发布给后台,后台不需要渲染页面,只需要把页面里的数据渲染进去。不知道我这样说你是否明白我的意思。

njleonzhang commented 8 years ago

我希望前端工程输出的是这样的东西:

<html>
    .......

    <div class='container'>
    </div>

<script id='test'>
     {{ name }}     
</script>

<script>
     var data = { name: leon };
     $('.container').html(template('test', data));
<script>

</html>

把这个作为工程化的输出,给到后台。 后台替换掉这句 var data = { name: leon }; 用他的语言去渲染。好像也可以。

但是这样的话页面的内容就在script脚本下了,貌似和SPA一样了,没办法SEO了。。。 :(

看来只能用你这个方式了。

vhtml commented 8 years ago

@njleonzhang 你的意思应该是要输出一套前端模板,让一些数据到前端用js去渲染,但是一部分数据又想要在后端先渲染好。

这个前后端使用两套不一样的且无冲突的模板就可以了。不过似乎没有必要,就像你说的和SPA的做法一样了,有点多此一局的感觉

njleonzhang commented 8 years ago

@vhtml 你说的很有道理。

njleonzhang commented 8 years ago

@vhtml 参考里的意思,我们做了一个webpack + jade的starter。 https://github.com/njleonzhang/webpack-jade-multipage-starter