vant
This commit is contained in:
1
utils/dist/tabbar/index.d.ts
vendored
Normal file
1
utils/dist/tabbar/index.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export {};
|
||||
65
utils/dist/tabbar/index.js
vendored
Normal file
65
utils/dist/tabbar/index.js
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
import { VantComponent } from '../common/component';
|
||||
VantComponent({
|
||||
relation: {
|
||||
name: 'tabbar-item',
|
||||
type: 'descendant',
|
||||
linked(target) {
|
||||
this.children.push(target);
|
||||
target.parent = this;
|
||||
target.updateFromParent();
|
||||
},
|
||||
unlinked(target) {
|
||||
this.children = this.children.filter((item) => item !== target);
|
||||
this.updateChildren();
|
||||
}
|
||||
},
|
||||
props: {
|
||||
active: {
|
||||
type: null,
|
||||
observer: 'updateChildren'
|
||||
},
|
||||
activeColor: {
|
||||
type: String,
|
||||
observer: 'updateChildren'
|
||||
},
|
||||
inactiveColor: {
|
||||
type: String,
|
||||
observer: 'updateChildren'
|
||||
},
|
||||
fixed: {
|
||||
type: Boolean,
|
||||
value: true
|
||||
},
|
||||
border: {
|
||||
type: Boolean,
|
||||
value: true
|
||||
},
|
||||
zIndex: {
|
||||
type: Number,
|
||||
value: 1
|
||||
},
|
||||
safeAreaInsetBottom: {
|
||||
type: Boolean,
|
||||
value: true
|
||||
}
|
||||
},
|
||||
beforeCreate() {
|
||||
this.children = [];
|
||||
},
|
||||
methods: {
|
||||
updateChildren() {
|
||||
const { children } = this;
|
||||
if (!Array.isArray(children) || !children.length) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
return Promise.all(children.map((child) => child.updateFromParent()));
|
||||
},
|
||||
onChange(child) {
|
||||
const index = this.children.indexOf(child);
|
||||
const active = child.data.name || index;
|
||||
if (active !== this.data.active) {
|
||||
this.$emit('change', active);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
3
utils/dist/tabbar/index.json
vendored
Normal file
3
utils/dist/tabbar/index.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"component": true
|
||||
}
|
||||
8
utils/dist/tabbar/index.wxml
vendored
Normal file
8
utils/dist/tabbar/index.wxml
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
<wxs src="../wxs/utils.wxs" module="utils" />
|
||||
|
||||
<view
|
||||
class="custom-class {{ border ? 'van-hairline--top-bottom' : '' }} {{ utils.bem('tabbar', { fixed, safe: safeAreaInsetBottom }) }}"
|
||||
style="{{ zIndex ? 'z-index: ' + zIndex : '' }}"
|
||||
>
|
||||
<slot />
|
||||
</view>
|
||||
1
utils/dist/tabbar/index.wxss
vendored
Normal file
1
utils/dist/tabbar/index.wxss
vendored
Normal file
@@ -0,0 +1 @@
|
||||
@import '../common/index.wxss';.van-tabbar{display:-webkit-flex;display:flex;width:100%;height:50px;height:var(--tabbar-height,50px);background-color:#fff;background-color:var(--tabbar-background-color,#fff)}.van-tabbar--fixed{position:fixed;bottom:0;left:0}.van-tabbar--safe{padding-bottom:env(safe-area-inset-bottom)}
|
||||
Reference in New Issue
Block a user