UNPKG

vant-fork

Version:

Lightweight Mobile UI Components built on Vue

79 lines (68 loc) 1.8 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _info = _interopRequireDefault(require("../info")); var _create = _interopRequireDefault(require("../utils/create")); var _routerLink = _interopRequireDefault(require("../mixins/router-link")); var _components; var _default = (0, _create.default)({ render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('div', { class: _vm.b({ active: _vm.active }), on: { "click": _vm.onClick } }, [_c('div', { class: _vm.b('icon', { dot: _vm.dot }) }, [_vm._t("icon", [_vm.icon ? _c('icon', { attrs: { "name": _vm.icon } }) : _vm._e()], { active: _vm.active }), _c('van-info', { attrs: { "info": _vm.info } })], 2), _c('div', { class: _vm.b('text') }, [_vm._t("default", null, { active: _vm.active })], 2)]); }, name: 'tabbar-item', components: (_components = {}, _components[_info.default.name] = _info.default, _components), mixins: [_routerLink.default], props: { icon: String, dot: Boolean, info: [String, Number] }, data: function data() { return { active: false }; }, beforeCreate: function beforeCreate() { this.$parent.items.push(this); }, destroyed: function destroyed() { this.$parent.items.splice(this.$parent.items.indexOf(this), 1); }, methods: { onClick: function onClick(event) { this.$parent.onChange(this.$parent.items.indexOf(this)); this.$emit('click', event); this.routerLink(); } } }); exports.default = _default;