1.0.1 • Published 3 years ago

gfee-utils v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

gfee-utils

安装

npm install --save gfee-utils

配置

推荐按需引入,后编译,需先安装 eslint-plugin-import

npm install --save-dev eslint-plugin-import

babel.config.js

module.exports = {
  plugins: [
    [
      'import',
      {
        libraryName: 'gfee-utils',
        camel2DashComponentName: false,
        libraryDirectory: 'src',
        customName: name => {
          const firstLetter = name.slice(0, 1).toLocaleLowerCase();
          const restLetters = name.slice(1, name.length);
          return `gfee-utils/src/${firstLetter}${restLetters}`;
        },
      },
      'gfee-utils',
    ],
  ],
};

vue.config.js

module.exports = {
  // ...
  transpileDependencies: [/[/\\]node_modules[/\\]gfee-utils[/\\]/],
};

webpack.config.js

{
  test: /\.js$/,
  use: ['babel-loader'],
  exclude(modulePath) {
    if (/gfee-utils/.test(modulePath)) {
      return false;
    }
    return /node_modules/.test(modulePath);
  },
}

使用

import { getNodePath, checkAppVersion } from 'gfee-utils';

已有工具方法说明

  • checkAppVersion 监测项目前端版本更新
  • cloneDeepPlainObject 对plainObject对象简单深度copy
  • deepForEachArray 深度遍历数组每一项(包含children子项)做处理
  • formatDate 日期格式化:yyyy-MM-dd
  • formatDateTime 时间格式化:yyyy-MM-dd HH:mm:ss
  • getArrayItemByKeyVal 通过一个键值获取一个对象数组中有含这个键值的项
  • getNodePath 在一个树状结构数据上寻找某个节点,返回完整的节点路径
  • iExtend 用多个源对象的属性覆盖目标对象的已定义属性
  • isValidVal 是否是有效值,除了null, undefined, ''以外的值
  • lazyload 图片懒加载
  • parseUrl 对url各部分进行拆分分析
  • parseUrlParams 获取url查询字符串参数
  • stringifyParams 把一个对象序列化为查询字符串
  • add 加法,fix精度问题
  • divide 除法,fix精度问题
  • multiply 乘法,fix精度问题
  • subtract 减法,fix精度问题
  • timeAgoLabel 时间戳转换成什么之前
  • randomNumber 生成任意位数随机数
  • randomId 简单随机生成一个自定义长度字符串,可用做id标识
  • throttle 节流,将高频操作优化成低频操作,每隔 100~500 ms执行一次即可
  • debounce 防抖多次高频操作优化为只在最后一次执行
  • copyToClipboard 将一个字符串复制到剪贴板
  • scrollToTop 平滑滚动到页面顶部
  • decodeURLRecursively 深层解码