后台使用freeMarker和前端使用vue的方法及遇到的问题


Posted in Javascript onJune 13, 2019

一:freeMarker的使用

1:java后台使用freeMarker是通过Model,将值传给前端:

如:

@Controller
public class MobileNewsFreeMarkerController {
@RequestMapping("page/test")

public String Test(Model model,HttpServletRequest request){


//获取项目路径



String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+""+request.getContextPath()+"/";


//将页面路径通过model传给前台


model.addAttribute("basePath", basePath);


//通过HttpServletRequest 获取url中的值,如code值


String code = request.getParameter("code");


//将获取的code参数传给前台


model.addAttribute("code ", code );


//页面跳转


return "page/test";

}
}

2:前端页面获取后台传输的值(freeMarker传输的值只能在html页面获取)

注:这里是结合vue

第一步:在js中定义vue的相关参数:

var vm = new Vue({
el: '#rrapp',

data: {


basePath:"", //项目路径


code : "", // code参数

},
..........(vue后面内容省略)

第二步:再在页面接收后台传输的值

<head>
<script type="text/javascript"> 


$(document).ready(function() {



<#if basePath??>




vm.basePath="${basePath}";



</#if>



<#if userId??>




vm.code ="${code }";



</#if> 


});

</script>
</head>

二:使用中主要遇到的问题

1:Vue存在调用的先后顺序,虽然html页面将后台传输的值付给vue的data中的参数,但是在mounted中是无法使用的时候获取的还是创建的vue的时候data中赋的值,并不会使用html赋的值:

如:

var vm = new Vue({
el: '#rrapp',

data: {


basePath: "",


code :"",

},
mounted: function () {
var _this = this;
console.log(_this.basePath);
//输出的还是:"",并不会输出html赋的值,所有在这里无法使用
}

2:但是在vue中methods内的方法是可以直接使用的;初始化如果需要html中传输的参数,可以使用以下方法:

$(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;


//进行初始化业务操作!

},
}

总结

以上所述是小编给大家介绍的后台使用freeMarker和前端使用vue的方法及遇到的问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
一个无限级XML绑定跨框架菜单(For IE)
Jan 27 Javascript
JavaScript 对象链式操作测试代码
Apr 25 Javascript
如何使用json在前后台进行数据传输实例介绍
Apr 11 Javascript
JS验证邮箱格式是否正确的代码
Dec 05 Javascript
jquery仿搜索自动联想功能代码
May 23 Javascript
Grunt入门教程(自动任务运行器)
Aug 06 Javascript
AngularJs上传前预览图片的实例代码
Jan 20 Javascript
Web技术实现移动监测的介绍
Sep 18 Javascript
Vue2.0实现组件数据的双向绑定问题
Mar 06 Javascript
js prototype和__proto__的关系是什么
Aug 23 Javascript
Vue基本指令实例图文讲解
Feb 25 Vue.js
关于对TypeScript泛型参数的默认值理解
Jul 15 Javascript
vue路由插件之vue-route
Jun 13 #Javascript
在JavaScript中使用严格模式(Strict Mode)
Jun 13 #Javascript
详解vuex之store源码简单解析
Jun 13 #Javascript
vue store之状态管理模式的详细介绍
Jun 13 #Javascript
微信小程序页面间跳转传参方式总结
Jun 13 #Javascript
微信小程序位置授权处理方法
Jun 13 #Javascript
json数据格式常见操作示例
Jun 13 #Javascript
You might like
php缩放图片(根据宽高的等比例缩放)实例介绍
2013/06/09 PHP
php获取数组长度的方法(有实例)
2013/10/27 PHP
浅谈Eclipse PDT调试PHP程序
2014/06/09 PHP
PHP利用header跳转失效的解决方法
2014/10/24 PHP
用javascript控制iframe滚动的代码
2007/04/10 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
2011/04/08 Javascript
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
jquery cookie实现的简单换肤功能适合小网站
2013/08/25 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
Javascript同时声明一连串(多个)变量的方法
2017/01/23 Javascript
JavaScript设计模式之策略模式详解
2017/06/09 Javascript
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
vue单个组件实现无限层级多选菜单功能
2018/04/10 Javascript
Javascript异步执行不按顺序解决方案
2020/04/30 Javascript
解决vue刷新页面以后丢失store的数据问题
2020/08/11 Javascript
Python实现登录人人网并抓取新鲜事的方法
2015/05/11 Python
Python实现图片尺寸缩放脚本
2018/03/10 Python
python3+PyQt5实现拖放功能
2018/04/24 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
详解windows python3.7安装numpy问题的解决方法
2018/08/13 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
Python拆分大型CSV文件代码实例
2019/10/07 Python
python多线程并发及测试框架案例
2019/10/15 Python
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
机电一体化专业应届生求职信
2013/11/27 职场文书
同事打架检讨书
2014/02/04 职场文书
校庆接待方案
2014/03/18 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
见习报告格式要求
2014/11/04 职场文书
通知函的格式
2015/04/27 职场文书
2015年高三班主任工作总结
2015/05/21 职场文书
掌握一个领域知识,高效学习必备方法
2019/08/08 职场文书
聘任书的格式及模板
2019/10/28 职场文书
python实现求纯色彩图像的边框
2021/04/08 Python