怎么样vue可以动态解析后台给的html模板?

html-css09

怎么样vue可以动态解析后台给的html模板?,第1张

对于 vue 来说,模板本质就是一个字符串

vue 中的模板是有逻辑的,是动态的,如 v-if、v-for 等

与 html 格式很像,但有很大区别;html 是静态的,而 vue 模板是动态的

最终还是要转化为 html 来显示,怎么才能转换为 html 来显示呢?

模板最终必须转换为 JS 代码?

因为模板有逻辑 (v-if,v-for),必须用 JS 才能实现(前端中只有 JS 是图灵完备语言)

转换为html渲染页面,必须用 JS 才能实现渲染

因此模板最终要转换为一个 JS 函数(render 函数),(render 函数是指的渲染函数,并不一定就必须是 render 这个名字)

render函数

render 函数的 with 的用法

模板中,所有信息都包含在了 render 函数中

this 即 vm

price 就是 this.price,也是 vm.parice,也是 data.price

以最简单的新闻网页为例,先是做一个模板页,假定其中3个地方要动态更换的:标题,内容,日期,哪么模板中这3个地方都要用特殊的名称表示。

要生成html页时,先读入html模板页,再查询数据库,把查询到标题,内容,日期的实际值替换模板中的特殊名称,并按规则命名另存这个文件。

以上是动态生成html页的基本原理,实际工作中,可灵活处理,比如一次性生成所有页,或者发布一个生成一个,可以用一个模板,也可以根据类别用3个5个模板。模板可以保存为文件文件,也可保存在数据库中等等。

?