es6 方法具名参数及默认值

es6 对方法参数做了较大升级,不仅可以提供具名参数还能设定默认值

携带具名参数的方法

1
2
3
4
5
6
7
8
function common (message, type, { position , duration }) {
  Toast({
    message: message,
    className: type,
    position: position,
    duration: duration
  })
}

为具名参数指定默认值的方法

1
2
3
4
5
6
7
8
function common (message, type, { position = 'middle', duration = 3000 }) {
  Toast({
    message: message,
    className: type,
    position: position,
    duration: duration
  })
}

注意事项

  1. 携带具名参数的方法,在调用时如果不传递对应参数也必须传递一个空的大空号,否则内部参数使用时会抛出 undefined
1
common(message, 'warning', {})
  1. 为防止这种每次调用都必须传递一对空的大空号的麻烦,可以对方法进行二次封装
1
2
3
export function error (message, position) {
  common(message, 'error', { position })
}