后臺(tái)使用freeMarker和前端使用vue的方法及遇到的問(wèn)題
一:freeMarker的使用
1:java后臺(tái)使用freeMarker是通過(guò)Model,將值傳給前端:
如:
@Controller public class MobileNewsFreeMarkerController { @RequestMapping("page/test") public String Test(Model model,HttpServletRequest request){ //獲取項(xiàng)目路徑 String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+""+request.getContextPath()+"/"; //將頁(yè)面路徑通過(guò)model傳給前臺(tái) model.addAttribute("basePath", basePath); //通過(guò)HttpServletRequest 獲取url中的值,如code值 String code = request.getParameter("code"); //將獲取的code參數(shù)傳給前臺(tái) model.addAttribute("code ", code ); //頁(yè)面跳轉(zhuǎn) return "page/test"; } }
2:前端頁(yè)面獲取后臺(tái)傳輸?shù)闹担╢reeMarker傳輸?shù)闹抵荒茉趆tml頁(yè)面獲?。?/p>
注:這里是結(jié)合vue
第一步:在js中定義vue的相關(guān)參數(shù):
var vm = new Vue({ el: '#rrapp', data: { basePath:"", //項(xiàng)目路徑 code : "", // code參數(shù) }, ..........(vue后面內(nèi)容省略)
第二步:再在頁(yè)面接收后臺(tái)傳輸?shù)闹?/p>
<head> <script type="text/javascript"> $(document).ready(function() { <#if basePath??> vm.basePath="${basePath}"; </#if> <#if userId??> vm.code ="${code }"; </#if> }); </script> </head>
二:使用中主要遇到的問(wèn)題
1:Vue存在調(diào)用的先后順序,雖然html頁(yè)面將后臺(tái)傳輸?shù)闹蹈督ovue的data中的參數(shù),但是在mounted中是無(wú)法使用的時(shí)候獲取的還是創(chuàng)建的vue的時(shí)候data中賦的值,并不會(huì)使用html賦的值:
如:
var vm = new Vue({ el: '#rrapp', data: { basePath: "", code :"", }, mounted: function () { var _this = this; console.log(_this.basePath); //輸出的還是:"",并不會(huì)輸出html賦的值,所有在這里無(wú)法使用 }
2:但是在vue中methods內(nèi)的方法是可以直接使用的;初始化如果需要html中傳輸?shù)膮?shù),可以使用以下方法:
$(function () { vm.getData(vm.basePath,vm.code); }); var vm = new Vue({ el: '#rrapp', data: { basePath: "", code :"", }, methods: { getData: function (baseUrlFlag,codeFlag) { var _this=this; _this.basePath= baseUrlFlag; _this.code =codeFlag; //進(jìn)行初始化業(yè)務(wù)操作! }, }
總結(jié)
以上所述是小編給大家介紹的后臺(tái)使用freeMarker和前端使用vue的方法及遇到的問(wèn)題,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
相關(guān)文章
vue+axios實(shí)現(xiàn)文件上傳的實(shí)時(shí)進(jìn)度條
最近用vue寫(xiě)上傳的時(shí)候,遇到一個(gè)需求就是頁(yè)面上展示上傳的進(jìn)度條,之后寫(xiě)過(guò)一次,但是用的是假交互,直接從0-100,今天分享一下用axios自帶的onUploadProgress來(lái)完成這個(gè)小需求,感興趣的朋友可以參考下2024-01-01利用angular、react和vue實(shí)現(xiàn)相同的面試題組件
eact 和angular,vue 這三個(gè)框架最近都比較火,下面這篇文章主要給大家介紹了關(guān)于利用angular、react和vue實(shí)現(xiàn)相同的面試題組件的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。2018-02-02vue如何實(shí)現(xiàn)左右滑動(dòng)tab(vue-touch)
這篇文章主要介紹了vue如何實(shí)現(xiàn)左右滑動(dòng)tab(vue-touch),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07vue3界面使用router及使用watch監(jiān)聽(tīng)router的改變
vue2中使用router非常簡(jiǎn)單,但是vue3中略微有些改變,通過(guò)本文講解下他的改變,對(duì)vue3?watch監(jiān)聽(tīng)router相關(guān)知識(shí)感興趣的朋友一起看看吧2022-11-11在Vue環(huán)境下利用worker運(yùn)行interval計(jì)時(shí)器的步驟
這篇文章主要介紹了在Vue環(huán)境下利用worker運(yùn)行interval計(jì)時(shí)器的步驟,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08Vue3.0版本強(qiáng)勢(shì)升級(jí)點(diǎn)特性詳解
這篇文章主要介紹了Vue3.0版本強(qiáng)勢(shì)升級(jí)點(diǎn)特性詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2022-06-06解決Vue中引入swiper,在數(shù)據(jù)渲染的時(shí)候,發(fā)生不滑動(dòng)的問(wèn)題
今天小編就為大家分享一篇解決Vue中引入swiper,在數(shù)據(jù)渲染的時(shí)候,發(fā)生不滑動(dòng)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-09-09