UNPKG

captain-ui

Version:

有赞vue wap业务组件库

93 lines (81 loc) 2.28 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; require("vant/es/sidebar-item/style"); var _sidebarItem = _interopRequireDefault(require("vant/es/sidebar-item")); require("vant/es/sidebar/style"); var _sidebar = _interopRequireDefault(require("vant/es/sidebar")); var _constants = require("../constants"); var _components; var _default2 = { render: function render() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c('van-sidebar', { staticClass: "cap-category-nav", style: _vm.positionStyle, attrs: { "active-key": _vm.active } }, _vm._l(_vm.navList, function (nav, index) { return _c('van-sidebar-item', { key: index, ref: "badges", refInFor: true, staticClass: "cap-category-nav__item", attrs: { "title": nav.title }, on: { "click": function click($event) { _vm.handleClick(index); } } }); }), 1); }, name: 'cap-category-nav', components: (_components = {}, _components[_sidebar.default.name] = _sidebar.default, _components[_sidebarItem.default.name] = _sidebarItem.default, _components), props: { navList: { type: Array, default: function _default() { return []; } }, active: { type: Number, default: 0 }, state: String, windowHeight: Number }, data: function data() { return { currentActive: this.active }; }, computed: { positionStyle: function positionStyle() { var position = this.state === _constants.NAV_STATE.FIXED ? 'fixed' : ''; var bottom = this.state === _constants.NAV_STATE.SCROLL_OUT ? 0 : ''; var top = this.state !== _constants.NAV_STATE.SCROLL_OUT ? '' : 'auto'; var maxHeight = this.windowHeight + 'px'; return { position: position, top: top, bottom: bottom, maxHeight: maxHeight }; } }, methods: { handleClick: function handleClick(index) { this.currentActive = index; this.$emit('click', index); } } }; exports.default = _default2;