学习笔记2015-11-16

这是九月份以来,在公司学习的时候的一些总结,不是很多,也并不太总要,但是自己在公司的项目中还是学到了很多东西,只是写出来感觉就不在了,能写出来的也就不那么总要了。
九月七日的笔记
@responseBody注解表示该方法的返回结果直接写入HTTP response
如果不加这个 spring mvc则将返回的结果当成跳转路径

@ResponseBody
    @RequestMapping(value = "/findTangStreetIssue", method = RequestMethod.POST)
    public ReturnObject findTangIssueInfo(***){
    *******
    return returnObject;
    }

@RequestMapping(value = "/toTangStreetIssueInfo", method = RequestMethod.GET)
    public String toTangStreeIssue() {

        logger.error("-------这里是我的跳转-------");
        return "tangtest/tangBeanefitStreetIssue";
    }

这里下面的代码没有加上@responsebody则表示返回的是路径 然后这个返回的路径再在spring mvc的配置文件下 做配置 跳转到相对应的位置

AngularJS的controller一般是对某个div进行控制 同时控制的也只有这个div内的html

查看一下 他们的网页的图片是怎么显示的?

@RequestParam的用法

laypage分页框架用法

laypage({
                    cont: 'pageView', //容器。值支持id名、原生dom对象,jquery对象。【如该容器为】:<div id="page1"></div>
                    pages: result.pageView.pageCount, //通过后台拿到的总页数
                    groups:7,
                    skip: true,
                    curr: pageNow, //当前页
                    jump: function(obj, first){ //触发分页后的回调 
                        sj.data.pageIndex = obj.curr;
                        if(!first){ //点击跳页触发函数自身,并传递当前页:obj.curr
                            queryBenefitIssue(obj.curr);
                        }
                    }
                });         

上面的cont参数是指的是你分页在页面上显示的容器(eg:div)位置

有空会去研究一下layui公式的js框架 http://www.layui.com/alone/
九月二十七日笔记

js相关

这次在js方便的学习有了一个深刻的进步,现在在js上的看法算是有了更上一层楼
js的编写应该面向对象(也可以将整个document当成一个对象),将一个特定的对象的属性、方法集合在一起,这样可以使js代码更加利于阅读,同时应该写一些必要的注释,方便复查代码。
js的框架用layer laypage laytpl的框架来做前台的消息提示,模板渲染等操作,非常方便
下面是三个js代码块,估计以后常用这里特做保存

//对url的路径进行解析 获取name对应的值
function getQueryString(name)
{
     var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
     var r = window.location.search.substr(1).match(reg);
     if(r!=null)return  unescape(r[2]); return null;
}
//替换指定传入参数的值,paramName为参数,replaceWith为新值
function replaceParamVal(paramName,replaceWith) {
    var oUrl = this.location.href.toString();
    var re=eval('/('+ paramName+'=)([^&]*)/gi');
    var nUrl = oUrl.replace(re,paramName+'='+replaceWith);
    this.location = nUrl;
}
//给url添加参数
function addUrlPara(name, value) {  
    var currentUrl = window.location.href.split('#')[0];  
    if (/\?/g.test(currentUrl)) {  
        if (/name=[-\w]{4,25}/g.test(currentUrl)) {  
            currentUrl = currentUrl.replace(/name=[-\w]{4,25}/g, name + "=" + value);  
        } else {  
            currentUrl += "&" + name + "=" + value;  
        }  
    } else {  
        currentUrl += "?" + name + "=" + value;  
    }  
    if (window.location.href.split('#')[1]) {  
        window.location.href = currentUrl + '#' + window.location.href.split('#')[1];  
    } else {  
        window.location.href = currentUrl;  
    }  
}  

下面是访问网络的baseAjax 他对分页等做了封装。运用了jQuery,laypage框架

var pageNow = 1;
//这里的layer.alert原来都是msgBox
//type:post or get,params:data是参数,successMethod成功方法failMethod失败方法,isQueryPage是否分页,pageSkin分页后页号显示的颜色(eg:'#35A9FE'')
function baseAjax(url,requestType,params,isQueryPage,pageViewId,pageSkin,isShowLoading){

    $.ajax({
        url : url,
        type : requestType,
        data : params.data,
        timeout:60000,
       beforeSend:function(XMLHttpRequest){     

            if(typeof(isShowLoading) == "undefined" || isShowLoading){

                Loading.showLoading();

            }

        },
        success : function(data, textStatus) {
            if(data == "is_login"){             
                window.location.href = "/index";
            }

            if(data == "user_notauth"){
                layer.alert("操作失败:没有该权限!");
            }

            if(data == "login_timeout"){

                var obj = {};

                obj.successMethod = function(){

                    window.location.href = "/login";

                }

                layer.alert("登陆超时,请重新登陆",obj);

            }

            if(data.errorCode == 0){

                params.successMethod(data);

                if(isQueryPage){

                    //显示分页
                    laypage({
                        cont: pageViewId, //容器。值支持id名、原生dom对象,jquery对象。【如该容器为】:<div id="page1"></div>
                        pages: data.pageView.pageCount, //通过后台拿到的总页数
                        skip: true, //是否开启跳页
                        groups:7,
                        skin: pageSkin,
                        curr: data.pageView.pageNow, //当前页
                        jump: function(obj, first){ //触发分页后的回调

                            params.data.pageNow = obj.curr;

                            if(!first){ //点击跳页触发函数自身,并传递当前页:obj.curr

                                //console.log(params.data.pageNow);

                                baseAjax(url,requestType,params,true,pageViewId,pageSkin);

                            }
                        }
                    });

                }
            }else{
                params.failMethod(data);
            }
        },               
        error : function(XMLHttpRequest, textStatus, errorThrown) {
            var timeOutError = {};

            timeOutError.detail = "连接超时";

            params.failMethod(timeOutError);

            if(textStatus == "timeout"){
                // 超时,status还有success,error等值的情况

                layer.alert("访问超时,请检查网络是否正常!");
            }else{              
                layer.alert("访问出错!");
            }
        },
        complete : function(msg){

            Loading.hideLoading();

        }
    });
}

js 类相关

new classTest("wocaoo").nextTest();

function classTest(username){
    this.username=username;
    classTest.prototype.test = function(){
        alert("this is test"+username);
    }
}
classTest.prototype.nextTest=function(){
    alert("this is nextTest")
}

这里的classTest类就可以定义为一个类 然后访问他的对象和熟悉就可以上上面那样访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值