first
This commit is contained in:
86
node_modules/vant/lib/switch/index.js
generated
vendored
Normal file
86
node_modules/vant/lib/switch/index.js
generated
vendored
Normal file
@ -0,0 +1,86 @@
|
||||
"use strict";
|
||||
|
||||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.default = void 0;
|
||||
|
||||
var _utils = require("../utils");
|
||||
|
||||
var _shared = require("./shared");
|
||||
|
||||
var _field = require("../mixins/field");
|
||||
|
||||
var _loading = _interopRequireDefault(require("../loading"));
|
||||
|
||||
// Utils
|
||||
// Mixins
|
||||
// Components
|
||||
var _createNamespace = (0, _utils.createNamespace)('switch'),
|
||||
createComponent = _createNamespace[0],
|
||||
bem = _createNamespace[1];
|
||||
|
||||
var _default = createComponent({
|
||||
mixins: [_field.FieldMixin],
|
||||
props: _shared.switchProps,
|
||||
computed: {
|
||||
checked: function checked() {
|
||||
return this.value === this.activeValue;
|
||||
},
|
||||
style: function style() {
|
||||
return {
|
||||
fontSize: (0, _utils.addUnit)(this.size),
|
||||
backgroundColor: this.checked ? this.activeColor : this.inactiveColor
|
||||
};
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onClick: function onClick(event) {
|
||||
this.$emit('click', event);
|
||||
|
||||
if (!this.disabled && !this.loading) {
|
||||
var newValue = this.checked ? this.inactiveValue : this.activeValue;
|
||||
this.$emit('input', newValue);
|
||||
this.$emit('change', newValue);
|
||||
}
|
||||
},
|
||||
genLoading: function genLoading() {
|
||||
var h = this.$createElement;
|
||||
|
||||
if (this.loading) {
|
||||
var color = this.checked ? this.activeColor : this.inactiveColor;
|
||||
return h(_loading.default, {
|
||||
"class": bem('loading'),
|
||||
"attrs": {
|
||||
"color": color
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
render: function render() {
|
||||
var h = arguments[0];
|
||||
var checked = this.checked,
|
||||
loading = this.loading,
|
||||
disabled = this.disabled;
|
||||
return h("div", {
|
||||
"class": bem({
|
||||
on: checked,
|
||||
loading: loading,
|
||||
disabled: disabled
|
||||
}),
|
||||
"attrs": {
|
||||
"role": "switch",
|
||||
"aria-checked": String(checked)
|
||||
},
|
||||
"style": this.style,
|
||||
"on": {
|
||||
"click": this.onClick
|
||||
}
|
||||
}, [h("div", {
|
||||
"class": bem('node')
|
||||
}, [this.genLoading()])]);
|
||||
}
|
||||
});
|
||||
|
||||
exports.default = _default;
|
Reference in New Issue
Block a user