first
This commit is contained in:
116
node_modules/vant/es/address-edit/Detail.js
generated
vendored
Normal file
116
node_modules/vant/es/address-edit/Detail.js
generated
vendored
Normal file
@ -0,0 +1,116 @@
|
||||
import _extends from "@babel/runtime/helpers/esm/extends";
|
||||
// Utils
|
||||
import { createNamespace } from '../utils';
|
||||
import { isAndroid } from '../utils/validate/system'; // Components
|
||||
|
||||
import Cell from '../cell';
|
||||
import Field from '../field';
|
||||
|
||||
var _createNamespace = createNamespace('address-edit-detail'),
|
||||
createComponent = _createNamespace[0],
|
||||
bem = _createNamespace[1],
|
||||
t = _createNamespace[2];
|
||||
|
||||
var android = isAndroid();
|
||||
export default createComponent({
|
||||
props: {
|
||||
value: String,
|
||||
errorMessage: String,
|
||||
focused: Boolean,
|
||||
detailRows: [Number, String],
|
||||
searchResult: Array,
|
||||
detailMaxlength: [Number, String],
|
||||
showSearchResult: Boolean
|
||||
},
|
||||
computed: {
|
||||
shouldShowSearchResult: function shouldShowSearchResult() {
|
||||
return this.focused && this.searchResult && this.showSearchResult;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onSelect: function onSelect(express) {
|
||||
this.$emit('select-search', express);
|
||||
this.$emit('input', ((express.address || '') + " " + (express.name || '')).trim());
|
||||
},
|
||||
onFinish: function onFinish() {
|
||||
this.$refs.field.blur();
|
||||
},
|
||||
genFinish: function genFinish() {
|
||||
var h = this.$createElement;
|
||||
var show = this.value && this.focused && android;
|
||||
|
||||
if (show) {
|
||||
return h("div", {
|
||||
"class": bem('finish'),
|
||||
"on": {
|
||||
"click": this.onFinish
|
||||
}
|
||||
}, [t('complete')]);
|
||||
}
|
||||
},
|
||||
genSearchResult: function genSearchResult() {
|
||||
var _this = this;
|
||||
|
||||
var h = this.$createElement;
|
||||
var value = this.value,
|
||||
shouldShowSearchResult = this.shouldShowSearchResult,
|
||||
searchResult = this.searchResult;
|
||||
|
||||
if (shouldShowSearchResult) {
|
||||
return searchResult.map(function (express) {
|
||||
return h(Cell, {
|
||||
"key": express.name + express.address,
|
||||
"attrs": {
|
||||
"clickable": true,
|
||||
"border": false,
|
||||
"icon": "location-o",
|
||||
"label": express.address
|
||||
},
|
||||
"class": bem('search-item'),
|
||||
"on": {
|
||||
"click": function click() {
|
||||
_this.onSelect(express);
|
||||
}
|
||||
},
|
||||
"scopedSlots": {
|
||||
title: function title() {
|
||||
if (express.name) {
|
||||
var text = express.name.replace(value, "<span class=" + bem('keyword') + ">" + value + "</span>");
|
||||
return h("div", {
|
||||
"domProps": {
|
||||
"innerHTML": text
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
render: function render() {
|
||||
var h = arguments[0];
|
||||
return h(Cell, {
|
||||
"class": bem()
|
||||
}, [h(Field, {
|
||||
"attrs": {
|
||||
"autosize": true,
|
||||
"rows": this.detailRows,
|
||||
"clearable": !android,
|
||||
"type": "textarea",
|
||||
"value": this.value,
|
||||
"errorMessage": this.errorMessage,
|
||||
"border": !this.shouldShowSearchResult,
|
||||
"label": t('label'),
|
||||
"maxlength": this.detailMaxlength,
|
||||
"placeholder": t('placeholder')
|
||||
},
|
||||
"ref": "field",
|
||||
"scopedSlots": {
|
||||
icon: this.genFinish
|
||||
},
|
||||
"on": _extends({}, this.$listeners)
|
||||
}), this.genSearchResult()]);
|
||||
}
|
||||
});
|
Reference in New Issue
Block a user