一: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的方法及遇到的问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
本文向大家介绍vue使用技巧及vue项目中遇到的问题,包括了vue使用技巧及vue项目中遇到的问题的使用技巧和注意事项,需要的朋友参考一下 这里给大家分享一下vue中的一些技巧,希望对大家有用处。(话不多说上代码) 1,vue路由拦截浏览器后退实现表单保存类似需求(为了防止用户突然离开,没有保存已输入的信息。) 请参考vue文档全局钩子和组件钩子 2,路由懒加载写法: 3,路由的项目启动页和404
本文向大家介绍解决vue中使用less/sass及使用中遇到无效的问题,包括了解决vue中使用less/sass及使用中遇到无效的问题的使用技巧和注意事项,需要的朋友参考一下 一:使用方法 在vue官方脚手架中,即vue-lci搭建的项目中,可以轻易的使用less/sass。 先使用npm下载依赖,命令行为'npm install less less-loader –save',再在webpack
本文向大家介绍ubuntu14.04 使用中遇到的问题及解决方法集锦,包括了ubuntu14.04 使用中遇到的问题及解决方法集锦的使用技巧和注意事项,需要的朋友参考一下 这是第二次安装使用ubuntu了,虽然上一次因为不习惯和不会使用一两天就放弃了,这次坚持的时间稍微长一点,目前ubuntu的基本使用也熟悉了.但是由于ubuntu上的应用太少,常用软件,比如QQ,Photoshop,旺旺等软件无
由于项目的一些原因,我需要在打包的时候开启 cssCodeSplit 配置项目。如下图: 这样就会造成我每次打包的时候,就会在 dist 目录下自动生成这两个文件。 现在的问题就是,别的项目引入这个组件库的时候,必须在 main.ts 文件写两行这样的代码,引入样式文件以后才能正常使用我的这个组件库。 问题:vite 有没有什么配置可以设置打包后的文件路径呢?比如可以在每次打包的时候自动生成一个
本文向大家介绍使用vue-router与v-if实现tab切换遇到的问题及解决方法,包括了使用vue-router与v-if实现tab切换遇到的问题及解决方法的使用技巧和注意事项,需要的朋友参考一下 vue-router 该如何使用 忽然碰到一个常见的问题,明明可以使用 v-if / v-show 可以的解决的问题,有没有必要是使用 vue-router来解决。 比如常见的 tab 切换。一时间,
本文向大家介绍Vue使用vux-ui自定义表单验证遇到的问题及解决方法,包括了Vue使用vux-ui自定义表单验证遇到的问题及解决方法的使用技巧和注意事项,需要的朋友参考一下 初学框架vue搭配vux使用发现这个UI库使用有些力不从心。下面说说自己在表单验证过程遇到的两个需求问题及解决的方法。 1.使用x-input组件可知,官方只给了三种类型的is-type验证器,分别是:email,china