dvant
Version: 
A Vue.js 2.0 Mobile UI at dawnwin modified from Youzan
47 lines (41 loc) • 1.39 kB
JavaScript
;
exports.__esModule = true;
var _utils = require("../utils");
exports.default = (0, _utils.create)({
  render: function render() {
    var _vm = this;var _h = _vm.$createElement;var _c = _vm._self._c || _h;return _c(_vm.tag, { tag: "component", staticClass: "van-button", class: ['van-button--' + _vm.type, 'van-button--' + _vm.size, {
        'van-button--disabled': _vm.disabled,
        'van-button--loading': _vm.loading,
        'van-button--block': _vm.block,
        'van-button--bottom-action': _vm.bottomAction
      }], attrs: { "type": _vm.nativeType, "disabled": _vm.disabled }, on: { "click": _vm.onClick } }, [_vm.loading ? _c('loading', { attrs: { "size": "20px", "color": _vm.type === 'default' ? 'black' : 'white' } }) : _vm._e(), _c('span', { staticClass: "van-button__text" }, [_vm._t("default", [_vm._v(_vm._s(_vm.text))])], 2)], 1);
  },
  name: 'van-button',
  props: {
    text: String,
    block: Boolean,
    loading: Boolean,
    disabled: Boolean,
    nativeType: String,
    bottomAction: Boolean,
    tag: {
      type: String,
      default: 'button'
    },
    type: {
      type: String,
      default: 'default'
    },
    size: {
      type: String,
      default: 'normal'
    }
  },
  methods: {
    onClick: function onClick(event) {
      if (!this.loading && !this.disabled) {
        this.$emit('click', event);
      }
    }
  }
});