开发笔记

  • JavaScript标准参考教程

  • 阮一峰教程

  • 前端页面弹框遮罩禁止页面滚动

  • 两个页面传递参数实现的几种方式

  • SPA网站SEO完美解决方案

  • 再见,babel-preset-2015

  • Vue相关开源项目库汇总(史上最全)


  • vue全面介绍--全家桶、项目实例

  • InterviewMap

  • 用IDEA配置JavaWeb开发环境

  • windows安装tomcat遇到问题及解决方案

  • sourse1.5不支持diamond语法,但是jdk已经是1.8:需要在project structure中的module和project中将language level都设置为8(如果jdk为1.9的话language level就应该为9)

  • [idea] 编译报错 javacTask:源发行版1.8 需要目标发行版1.8:在settings -> Build,Execution, Deployment -> Compiler -> Java Compiler
    设置相应Module的 bytecode version即可

  • 找不到ctrip的包:在D:\Users\jz.wu\.m2下添加配置文件settings.xml

  • 总是定向到advantage页面:需要写一个return指定目录的controlor

  • Could not resolve view with name in servlet with name 'dispatcher'

    需要在tiles.xml中添加如下代码

    
        
        
    
    
  • 外部js文件路由寻址之后是null:在C:\opt\settings下添加server.properties文件,文件内是

    env=DEV
    local=true
    

    路由中会识别是不是开发环境,上面的文件会被路由识别到

  • 不能使用外部js文件的问题:需要添加vendor.js文件

  • https://blog.csdn.net/u010662647/article/details/79550307

  • https://segmentfault.com/a/1190000008503338#articleHeader13

  • https://segmentfault.com/a/1190000008019773

  • http://axure.release.ctripcorp.com/project/axure/H5%E9%85%92%E5%BA%976.8team1/#g=1&p=xm_%E5%A4%8D%E5%AE%A1%E6%A8%A1%E5%9D%97%E8%90%BD%E5%9C%B0%E9%A1%B5

  • 在jsp文件中不能使用es6的模板字符串,因为jsp中也是使用${}来解析的,所以不能使用,解决方法是单独把js文件拉出来或者${"${val}"},让jsp把内部的模板看做字符串来处理,或者干脆直接不用模板字符串,手动拼接字符串

  • 在java的controlor中,@RequestMapping({"/cinvoice", "/cinvoice/index"})是请求路径,即浏览器地址栏中的url路径

  • 找不到xxx包,多半是因为项目有了更新,新增加了依赖的包,执行mvn clean install -Dmaven.test.skip=true -Denforcer.skip=true命令即可

  • 使用importexport时,需要babel和webpack的支持,记得在添加了支持之后,要把index.html中的script标签的src换成webpack打包输出后的路径(比如dist目录)

  • 在发布的时候,或者说发布之前,要运行npm run dev-bundle(或者其他类似的命令,即webpack打包的命令),因为不运行这个的话,在本地跑是没有问题的,因为本地跑运行的是npm run dev-server命令,就是webpack-dev-server命令,动态地将js、css文件或者其他文件编译打包到了内存中,但是在发布时,html中引用的文件却是实际的dist目录下的文件,就会出现无法引用到最新的文件从而出现错误

  • 财务复审页由于是添加一张图片就会上传一张图片,但是本地img的src是直接获取reader.result,所以如果图片服务器返回真是url比较慢,就会出现本地有缩略图,但是实际picUrlToSend还是空,点击提交就会出现“至少上传一张图片”的提示,改动方法为在图片服务器返回url之前弹出一个蒙层且禁止操作,等到返回之后去掉蒙层,同时显示缩略图。

  • 如果想要在fat369测试环境中通过手机号以及短信验证码登录,需要打开nginx,结束后要在nginx的根目录下关闭,通过nginx -s stop

  • 移动端上传图片翻转问题、前端input图片的上传和压缩以及图片旋转90度问题解决

  • 理解 Android 相机预览方向和拍照方向

  • 现在的webpack 为什么这么难用?

  • npm有几个内置的命令,比如start命令,npm run start可以简写为npm start,但是其他命令不能这样,比如dev,不能简写为npm dev

  • 要善于使用Chrome开发工具的Network,可以很方便地看到Request headRequest payload(或者称为请求时传递的数据),也能看到返回的数据。区分optionsget/post

  • 前端实现图片压缩上传(兼容ios10系统)- polyfill

  • HTML5 file API加canvas实现图片前端JS压缩并上传

  • 实现上传图片的功能

    addImg(){
        let _this=this,
            input=document.getElementById("upload-img"),
            file=input.files[0],
            reader=new FileReader();
        reader.readAsDataURL(file);
        _this.isUploadPic=true;
        reader.onload=function(){
            let result=this.result;
            if(file.size > 1024*1024){
                let img=new Image();
                img.src=this.result;
                img.onload=function(){
                    let cvs=document.createElement("canvas"),
                        ctx=cvs.getContext("2d");
                    cvs.width=img.width/2;
                    cvs.height=img.height/2;
                    ctx.clearRect(0,0,cvs.width,cvs.height);
                    ctx.drawImage(img,0,0,cvs.width,cvs.height);// 这里面的内容需要考虑因为会出现大图
    
                    cvs.toBlob(function (blob) {
                        let reader = new FileReader();
                        reader.readAsDataURL(blob); 
                        
                        let base64data = '';
                        reader.onloadend = function() {
                            base64data = '{\"base64Str\":\"' + String(reader.result) + '\"}';               
                            //单张图片调上传
                            let url = urlList.uploadimg; 
                            let data = {
                                'base64Str': base64data, 
                            };
                            //填充url64
                            ajax.post(url, data, (reUrl) => {
                                _this.url64.push(reUrl.url);
                                _this.imgArr.push({src:result});
                                _this.isUploadPic=false;
                            }, (err) => {
                                console.log(err);
                            });
                        }
                    },"image/jpeg");
                }
            }else{
                //单张图片调上传
                let base64data = '{\"base64Str\":\"' + String(reader.result) + '\"}';
                let url = urlList.uploadimg; 
                let data = {
                    'base64Str': base64data, 
                };
                //填充url64
                ajax.post(url, data, (reUrl) => {
                    _this.url64.push(reUrl.url);
                    _this.imgArr.push({src:result});
                    _this.isUploadPic=false;
                }, (err) => {
                    console.log(err);
                });
            }
            input.value="";
        }
    },
    

你可能感兴趣的:(开发笔记)