本人不是干前端的 , 最近看了下 Vue.js 的 . 有一些疑问 . 因为之前都是使用 jsp的el表达式取值.或者使用freemarker模版取值,又或者使用jfinal的TemplateEng取值
一般都是这样
*******************************************************************************
url地址请求---controler接收----congtroller处理请求render页面进行渲染----页面中使用模版引擎表达式渲染以及数据绑定
*******************************************************************************
看了VUE之后
我理解的是不是要这样了
*******************************************************************************
url地址请求---controler接收直接返回页面----页面中再请求controller----controller接受请求对数据进行处理返回JSON----使用vue进行数据绑定
*******************************************************************************
可能就是没弄明白 , VUE的使用场景 , 后台controller渲染jsp的时候 , 可以把数据直接渲染到js里 , 也是可以的 . 这么写多少有点尴尬 . 求大佬指教 .
补充一下::::::::::::::::::::::::::::::::
比方说.......我现在使用模版引擎 遍历的功能列表 ......
#for(fun : funlist)
fun
#end
这种代码有很多 , 我改成 Vue之后 , 如何使用 , 全部换成Json吗 ? 还是全部单独再去请求然后返回json ??
如果你之前的view模板都是在服务器渲染的,那么完全用vue.js的话,工作量很大了,基本上所有服务器的模板都得用vue.js重写一下,因为这两者是同类的东西,虽然实现方式不同,但起到的作用是一样的。如果只是想利用vue.js的页面的数据绑定的,那么你那种“不正经”的使用方式也是可以的。毕竟,要改掉所有的视图的渲染工作量太大。用服务器模板引擎进行初次渲染,提交数据和请求数据的时候用vue.js把页面上的数据逐一收回来打包给控制器。我觉得这样一个过渡方案还是可行的,等有时间再做模板的修改吧。如果你的时间紧张的话。如果不紧张,那就一次都改过,模板写好,替换一下语法,也不算太复杂。你最后的那个理解是对的。
改成vue后就可以前后端分离了,不需要经过controller渲染页面那一步了,controller仅需要用来做接口提供数据就可以了
controller只提供数据,请求转发与渲染交由前端vue处理
我不是做前端的,只是在写一些后台页面时用到了。选择vue有两个原因,一是轻量级,上手快,适合我这种前端水平不高的;二是数据与视图的双向绑定,基本上不用再考虑页面取值和赋值问题,还是比较爽的。
你以前写的后端的mvc,服务端去渲染页面,此时大多后端把前端一起撸,或者前端写好静态界面给后端,后台copy进去自己调填充数据,再或者前端也跑后端的服务,学习用模板引擎填充数据。效率低,也不兼容App端,小程序端。
vue等mvvm框架做到了完全的前后端分离,后台就给数据,界面的一切交给前端。前端后不用管你后台用什么语言,ajax拿数据写自己页面就行。而且api接口的方式兼容各端app,小程序,web
我已经尝试这样用了, https://my.oschina.net/u/3192563/blog/3093619