亲宝软件园·资讯

展开

Vue0.1的过滤代码如何添加到Vue2.0直接使用

祗堂幻狼 人气:0

将Vue0.1里的过滤代码添加到Vue2.0,方法很简单,具体内容如下

var filters = {

 orderBy: orderBy,
 filterBy: filterBy,
 limitBy: limitBy,

 /**
  * Stringify value.
  *
  * @param {Number} indent
  */

 json: {
  read: function read(value, indent) {
  return typeof value === 'string' ? value : JSON.stringify(value, null, Number(indent) || 2);
  },
  write: function write(value) {
  try {
   return JSON.parse(value);
  } catch (e) {
   return value;
  }
  }
 },

 /**
  * 'abc' => 'Abc'
  */

 capitalize: function capitalize(value) {
  if (!value && value !== 0) return '';
  value = value.toString();
  return value.charAt(0).toUpperCase() + value.slice(1);
 },

 /**
  * 'abc' => 'ABC'
  */

 uppercase: function uppercase(value) {
  return value || value === 0 ? value.toString().toUpperCase() : '';
 },

 /**
  * 'AbC' => 'abc'
  */

 lowercase: function lowercase(value) {
  return value || value === 0 ? value.toString().toLowerCase() : '';
 },

 /**
  * 12345 => $12,345.00
  *
  * @param {String} sign
  */

 currency: function currency(value, _currency) {
  value = parseFloat(value);
  if (!isFinite(value) || !value && value !== 0) return '';
  _currency = _currency != null ? _currency : '$';
  var stringified = Math.abs(value).toFixed(2);
  var _int = stringified.slice(0, -3);
  var i = _int.length % 3;
  var head = i > 0 ? _int.slice(0, i) + (_int.length > 3 ? ',' : '') : '';
  var _float = stringified.slice(-3);
  var sign = value < 0 ? '-' : '';
  return sign + _currency + head + _int.slice(i).replace(digitsRE, '$1,') + _float;
 },

 /**
  * 'item' => 'items'
  *
  * @params
  * an array of strings corresponding to
  * the single, double, triple ... forms of the word to
  * be pluralized. When the number to be pluralized
  * exceeds the length of the args, it will use the last
  * entry in the array.
  *
  * e.g. ['single', 'double', 'triple', 'multiple']
  */

 pluralize: function pluralize(value) {
  var args = toArray(arguments, 1);
  return args.length > 1 ? args[value % 10 - 1] || args[args.length - 1] : args[0] + (value === 1 ? '' : 's');
 },

 /**
  * Debounce a handler function.
  *
  * @param {Function} handler
  * @param {Number} delay = 300
  * @return {Function}
  */

 debounce: function debounce(handler, delay) {
  if (!handler) return;
  if (!delay) {
  delay = 300;
  }
  return _debounce(handler, delay);
 }
 };

加载全部内容

相关教程
猜你喜欢
用户评论