12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- import { VantComponent } from '../common/component';
- import { useParent } from '../common/relation';
- import { link } from '../mixins/link';
- VantComponent({
- relation: useParent('grid'),
- classes: ['content-class', 'icon-class', 'text-class'],
- mixins: [link],
- props: {
- icon: String,
- iconColor: String,
- iconPrefix: {
- type: String,
- value: 'van-icon',
- },
- dot: Boolean,
- info: null,
- badge: null,
- text: String,
- useSlot: Boolean,
- },
- data: {
- viewStyle: '',
- },
- mounted() {
- this.updateStyle();
- },
- methods: {
- updateStyle() {
- if (!this.parent) {
- return;
- }
- const { data, children } = this.parent;
- const { columnNum, border, square, gutter, clickable, center, direction, reverse, iconSize, } = data;
- this.setData({
- center,
- border,
- square,
- gutter,
- clickable,
- direction,
- reverse,
- iconSize,
- index: children.indexOf(this),
- columnNum,
- });
- },
- onClick() {
- this.$emit('click');
- this.jumpLink();
- },
- },
- });
|