theme.js 611 Bytes
export const theme = {
  bind: function (el, binding, vnode) {
    setEleStyleColorAttribute(el, binding);
  },
  update: function (el, binding, vnode) {
    setEleStyleColorAttribute(el, binding);
  },
  componentUpdated: function (el, binding, vnode) {
    setEleStyleColorAttribute(el, binding);
  }
}

function setEleStyleColorAttribute (el, binding) {
  const { name, value, arg, expression, modifiers } = binding;
  const { background, font, border } = modifiers;
  if (background) el.style['background-color'] = value;
  if (font) el.style.color = value;
  if (border) el.style['border-color'] = value;
}