applyStyle ({ styles, classes }, item) {
    // cache object
    const it = item
    const e = it.el
    const p = it.props
    const stl = e.style
    // cache props
    const ns = p.noStyles

    const cArray = e.className.split(' ')
    // Disable due to bug with old versions of eslint-scope and for ... in
    // https://github.com/eslint/eslint/issues/12117
    // eslint-disable-next-line no-unused-vars
    for (const cls in classes) {
      const addClass = classes[cls]
      if (addClass) {
        if (cArray.indexOf(cls) === -1) cArray.push(cls)
      } else {
        const idx = cArray.indexOf(cls)
        if (idx !== -1) cArray.splice(idx, 1)
      }
    }

    e.className = cArray.join(' ')

    if (styles['position']) {
      stl['position'] = styles['position']
    }

    if (ns) return

    // eslint-disable-next-line no-unused-vars
    for (const key in styles) {
      stl[key] = styles[key]
    }
  }
leave !this.isWin
@example https://codepen.io/yowainwright/pen/EXzJeb