如何把多个模板render的结果在同一个view上显示?
现在遇到一个问题: 我有用多个http.request从不同的API拿到数据,而数据拿到的时间不是同步的,所以我想每当一个API数据拿完就把对应view render好。可是我用express框架和ejs模板引擎的时候发现模板引擎只能对应render一个view,下一个view被render的时候就会把之前的覆盖。不知道有没有什么好办法把独立的template render完后在同一个view里一个一个显示出来呢?我有想过用jQuery append,但是感觉不是一个特别decent的做法啊?
4 回复
第二次rander的时候从req.locals里面取出先前的数据,不可以么
就是说第二次取出第一次的数据然后一起render一下?这样的话和所有数据都取到之后再一起显示是一样的了,感觉这样浪费了很多时间啊,应该取到一组数据就显示一组,这样一组一组asynchronously显示才会更高效不是吗?
@Shaohuan 用ajax吧,一个页面好像只能render一次
@huanghaiyang 恩。我再思考思考。直接用ajax就好像把express的mvc pattern给破坏了,但是暂时没有别的办法。想想那种大型的网站比如facebook什么的应该也不可能是等所有data都到了再render的。