vue-ant-patterns
Version:
vue-ant-patterns
93 lines (78 loc) • 2.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _babelHelperVueJsxMergeProps = require('babel-helper-vue-jsx-merge-props');
var _babelHelperVueJsxMergeProps2 = _interopRequireDefault(_babelHelperVueJsxMergeProps);
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _vueTypes = require('ant-design-vue/lib/_util/vue-types');
var _vueTypes2 = _interopRequireDefault(_vueTypes);
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var ViewItem = {
props: {
prefixCls: _vueTypes2['default'].string.def('depot-dquerypanel-viewItem'),
selected: _vueTypes2['default'].bool.def(false),
conditionItem: _vueTypes2['default'].object.def({}),
editConViewVisible: _vueTypes2['default'].bool
},
data: function data() {
return {
selState: this.selected
};
},
watch: {
selected: function selected(val, oval) {
this.selState = val;
}
},
methods: {
switchState: function switchState() {
this.$emit('selectview', this.conditionItem.id);
// this.selState = !this.selState;
},
delView: function delView() {
this.$emit('delView', this.conditionItem);
}
},
render: function render() {
var _cx, _cx2;
var h = arguments[0];
var prefixCls = this.prefixCls,
conditionItem = this.conditionItem;
var itemProps = {
'class': (0, _classnames2['default'])((_cx = {}, (0, _defineProperty3['default'])(_cx, '' + prefixCls, true), (0, _defineProperty3['default'])(_cx, prefixCls + '-select', this.selState), _cx))
};
var selectIcon = {
'class': (0, _classnames2['default'])((_cx2 = {}, (0, _defineProperty3['default'])(_cx2, prefixCls + '-selectIcon', true), (0, _defineProperty3['default'])(_cx2, prefixCls + '-selectIcon-hidden', !this.selState), _cx2))
};
return h('a-badge', [this.editConViewVisible ? h(
'div',
{ slot: 'count', 'class': 'bquerypanel-badgeDiv', on: {
'click': this.delView
}
},
['x']
) : '', h(
'div',
(0, _babelHelperVueJsxMergeProps2['default'])([itemProps, {
on: {
'click': this.switchState
}
}]),
[h(
'div',
selectIcon,
[h('a-icon', {
attrs: {
type: 'check'
},
style: { color: '#FFFFFF', transform: 'rotate(-45deg) scale(0.8)', margin: '-6px', fontSize: '12px' }
})]
), conditionItem.name]
)]);
}
};
exports['default'] = ViewItem;