defaulttext

方便的给对象,字符串或者数字一个默认值

Usage no npm install needed!

<script type="module">
  import defaulttext from 'https://cdn.skypack.dev/defaulttext';
</script>

README

defaultText

方便的给对象,字符串或者数字一个默认值

背景

在前端项目中经常会遇到一些默认值处理的情况, 本项目可以让你方便的统一设置规则来进行默认值的处理,即灵活又统一方便修改。

use

npm i defaultText -S
const firstProxy2Default = new Proxy2Default('暂无'});
firstProxy2Default.proxyObj(undefined);  //'暂无'

有时候你可能需要一些比较特殊的处理规则,比如你哪些特殊的值需要处理成为默认值通过includes,哪些特殊的值0, false不需要处理为默认值通过excludes

const firstProxy2Default = new Proxy2Default('暂无', { includes: ['0'], excludes: [0] });
firstProxy2Default.proxyObj({msg: '', id: 0, value: '0'}, {key: 'id'}); // 0
firstProxy2Default.proxyObj({msg: '', id: 0, value: '0'}, {key: 'msg'}); // '暂无'
firstProxy2Default.proxyObj({msg: '', id: 0, value: '0'}, {key: 'value'}); // '暂无'

Proxy2Default参数说明

参数 说明 类型 默认值
第一个参数 第一个参数为字符串或者函数,如果是函数的返回值为默认值 string|() => string
options 这里是一个可选对象 object

options的参数说明 |参数|说明|类型|默认值| |---|---|---|---| |includes|里面的值会被替换为默认值|string|number[]|无| |excludes|这里的值不会被替换为默认值,常见0等你不想被替换为默认值的情况|string|number[]|无|

proxyObj中参数说明

proxyObj(
  obj: any,
  options?: { 
    key?: string, 
    defaultText?: string|(() => string), 
    includes?: (string|number)[],
    excludes?: (string|number)[],
  }
)

proxyObj中的参数优先级高 会覆盖类中的参数!