一些小东西

86 阅读1分钟

1:字符串补全

string.padStart(length, string]);

length:填充后结果字符串的所需长度。

string:可选的。它是要填充到 string 开头的指定字符串。如果未提供此参数,则 padStart() 方法将使用空格作为填充字符。

padStart() 方法返回一个字符串,该字符串已在指定字符串的开头填充到所需的长度。

例如:

var totn_string = 'TechOnTheNet';

console.log(totn_string.padStart(16,'xyz'));

输出:xyzxTechOnTheNet

如果有多个字符,就凑满为止,值得注意的是从头部开始补充的,还有一个从尾巴上补充的

string.padEnd(length pad_string);

var totn_string = 'TechOnTheNet';

console.log(totn_string.padEnd(16,'xyz'));
TechOnTheNetxyzx

2:element input的稀奇古怪的校验

先在rule里面注册一下

rule:{avoidReason: { validator: validateCode,trigger: 'change'}]}

var validateCode = (rule, value, callback) => {//回避单位信用代码校验
            //value返回各种值
            let obj = JSON.parse(JSON.stringify(value))
            if(obj.legalCodeDesc){
                if (!obj.legalCode) {
                    this.canSubmit = false;
                    callback(new Error('统一社会信用代码不能为空'));
                } else {
                    let reg = /^[0-9A-Z]{18}$/g
                    if(!reg.test(obj.legalCode)){
                        this.canSubmit = false;
                        callback(new Error('统一社会信用代码格式不正确'));
                    }
                    if(this.codeChanged){
                        callback()
                    }
                }
                callback(new Error(obj.legalCodeDesc))
            }else{
                //this.canSubmit = true;
                if (!obj.legalCode) {
                    this.canSubmit = false;
                    callback(new Error('统一社会信用代码不能为空'));
                } else {
                    let reg = /^[0-9A-Z]{18}$/g
                    if(!reg.test(obj.legalCode)){
                        this.canSubmit = false;
                        callback(new Error('统一社会信用代码格式不正确'));
                    }
                    callback()
                }
            }
           
        };
 canSubmit:是否通过校验;
 
 

这里通过element提供的validateCode对input进行自定义校验,可以针对多种情况进行callback err提示,对一些稀奇古怪的需求还是挺好用的,懒得优化版,反正自己看的,以后继续整理继续补充

3:在使用echarts绘制地图时图形上的文本标签 label 无法设置位置,position 属性无效

这里想改变 label 文字位置需要修改 GeoJson 文件:

      "properties": {
        "adcode": 110000,
        "name": "北京市",
        "cp":[116.405285,39.904989], //关键字段, 修改图形上的文本标签位置
        "center": [116.405285, 39.904989],
        "centroid": [116.41995, 40.18994],
        "childrenNum": 16,
        "level": "province",
        "parent": { "adcode": 100000 },
        "subFeatureIndex": 0,
        "acroutes": [100000]
      },