后台使用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 相关文章推荐
Javascript操纵Cookie实现购物车程序
Feb 15 Javascript
JS跨域总结
Aug 30 Javascript
Javascript 实现的数独解题算法网页实例
Oct 15 Javascript
Jquery Post处理后不进入回调的原因及解决方法
Jul 15 Javascript
DOM节点深度克隆函数cloneNode()用法实例
Jan 12 Javascript
javascript的几种写法总结
Sep 30 Javascript
jQuery复合事件结合toggle()方法的用法示例
Jun 10 jQuery
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
Dec 09 Javascript
详解基于Node.js的HTTP/2 Server实践
May 31 Javascript
通过函数作用域和块级作用域看javascript的作用域链
Aug 05 Javascript
Vue+Element-U实现分页显示效果
Nov 15 Javascript
解决js中的setInterval清空定时器不管用问题
Nov 17 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 文件状态缓存带来的问题
2008/12/14 PHP
解析php中memcache的应用
2013/06/18 PHP
PHP中使用正则表达式提取中文实现笔记
2015/01/20 PHP
PHP实现网站访问量计数器
2017/10/27 PHP
laravel5实现微信第三方登录功能
2018/12/06 PHP
javascript Discuz代码中的msn聊天小功能
2008/05/25 Javascript
js刷新框架子页面的七种方法代码
2008/11/20 Javascript
jquery 学习之一 对象访问
2010/11/23 Javascript
Fixie.js 自动填充内容的插件
2012/06/28 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
ECMAScript6中Map/WeakMap详解
2015/06/12 Javascript
JavaScript中日期函数的相关操作知识
2016/08/03 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
2016/11/16 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
Three.JS实现三维场景
2018/12/30 Javascript
JavaScript变量提升和严格模式实例分析
2019/01/27 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
2019/09/06 Javascript
Vue 实现从文件中获取文本信息的方法详解
2019/10/16 Javascript
JavaScript canvas实现雪花随机动态飘落
2020/02/08 Javascript
vue-cli点击实现全屏功能
2020/03/07 Javascript
简单了解JavaScript作用域
2020/07/31 Javascript
JS+Canvas实现五子棋游戏
2020/08/26 Javascript
[05:00]TI9战队采访 - Royal Never Give Up
2019/08/20 DOTA
python字典快速保存于读取的方法
2018/03/23 Python
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
全球酒店预订网站:Hotels.com
2016/08/10 全球购物
安踏官方商城:anta.cn
2019/12/16 全球购物
大唐电信科技股份有限公司java工程师面试经历
2016/12/09 面试题
通信专业个人自我鉴定
2013/10/21 职场文书
求职信的七个关键技巧
2014/02/05 职场文书
《雨霖铃》听课反思
2014/02/13 职场文书
市场营销专业毕业生求职信
2014/03/26 职场文书
关于成绩下滑的自我检讨书
2014/09/20 职场文书
社区低保工作总结2015
2015/07/23 职场文书
vue使用refs获取嵌套组件中的值过程
2022/03/31 Vue.js