u-select.js 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["uview-ui/components/u-select/u-select"],{
  2. /***/ 281:
  3. /*!******************************************************************************!*\
  4. !*** E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue ***!
  5. \******************************************************************************/
  6. /*! no static exports found */
  7. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  8. "use strict";
  9. __webpack_require__.r(__webpack_exports__);
  10. /* harmony import */ var _u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./u-select.vue?vue&type=template&id=a577ac80&scoped=true& */ 282);
  11. /* harmony import */ var _u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./u-select.vue?vue&type=script&lang=js& */ 284);
  12. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  13. /* harmony import */ var _u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./u-select.vue?vue&type=style&index=0&id=a577ac80&scoped=true&lang=scss& */ 286);
  14. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 10);
  15. var renderjs
  16. /* normalize component */
  17. var component = Object(_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
  18. _u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  19. _u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
  20. _u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  21. false,
  22. null,
  23. "a577ac80",
  24. null,
  25. false,
  26. _u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
  27. renderjs
  28. )
  29. component.options.__file = "uview-ui/components/u-select/u-select.vue"
  30. /* harmony default export */ __webpack_exports__["default"] = (component.exports);
  31. /***/ }),
  32. /***/ 282:
  33. /*!*************************************************************************************************************************!*\
  34. !*** E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=template&id=a577ac80&scoped=true& ***!
  35. \*************************************************************************************************************************/
  36. /*! exports provided: render, staticRenderFns, recyclableRender, components */
  37. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  38. "use strict";
  39. __webpack_require__.r(__webpack_exports__);
  40. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-select.vue?vue&type=template&id=a577ac80&scoped=true& */ 283);
  41. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  42. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  43. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  44. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_template_id_a577ac80_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  45. /***/ }),
  46. /***/ 283:
  47. /*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  48. !*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=template&id=a577ac80&scoped=true& ***!
  49. \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  50. /*! exports provided: render, staticRenderFns, recyclableRender, components */
  51. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  52. "use strict";
  53. __webpack_require__.r(__webpack_exports__);
  54. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  55. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  56. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
  57. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
  58. var components = {
  59. uPopup: function() {
  60. return __webpack_require__.e(/*! import() | uview-ui/components/u-popup/u-popup */ "uview-ui/components/u-popup/u-popup").then(__webpack_require__.bind(null, /*! @/uview-ui/components/u-popup/u-popup.vue */ 374))
  61. }
  62. }
  63. var render = function() {
  64. var _vm = this
  65. var _h = _vm.$createElement
  66. var _c = _vm._self._c || _h
  67. }
  68. var recyclableRender = false
  69. var staticRenderFns = []
  70. render._withStripped = true
  71. /***/ }),
  72. /***/ 284:
  73. /*!*******************************************************************************************************!*\
  74. !*** E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=script&lang=js& ***!
  75. \*******************************************************************************************************/
  76. /*! no static exports found */
  77. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  78. "use strict";
  79. __webpack_require__.r(__webpack_exports__);
  80. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-select.vue?vue&type=script&lang=js& */ 285);
  81. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  82. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  83. /* harmony default export */ __webpack_exports__["default"] = (_G_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  84. /***/ }),
  85. /***/ 285:
  86. /*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  87. !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=script&lang=js& ***!
  88. \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  89. /*! no static exports found */
  90. /***/ (function(module, exports, __webpack_require__) {
  91. "use strict";
  92. Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; //
  93. //
  94. //
  95. //
  96. //
  97. //
  98. //
  99. //
  100. //
  101. //
  102. //
  103. //
  104. //
  105. //
  106. //
  107. //
  108. //
  109. //
  110. //
  111. //
  112. //
  113. //
  114. //
  115. //
  116. //
  117. //
  118. //
  119. //
  120. //
  121. //
  122. //
  123. //
  124. //
  125. //
  126. //
  127. //
  128. //
  129. //
  130. //
  131. //
  132. //
  133. //
  134. //
  135. //
  136. //
  137. //
  138. //
  139. //
  140. //
  141. //
  142. //
  143. /**
  144. * select 列选择器
  145. * @description 此选择器用于单列,多列,多列联动的选择场景。(从1.3.0版本起,不建议使用Picker组件的单列和多列模式,Select组件是专门为列选择而构造的组件,更简单易用。)
  146. * @tutorial http://uviewui.com/components/select.html
  147. * @property {String} mode 模式选择,"single-column"-单列模式,"mutil-column"-多列模式,"mutil-column-auto"-多列联动模式
  148. * @property {Array} list 列数据,数组形式,见官网说明
  149. * @property {Boolean} v-model 布尔值变量,用于控制选择器的弹出与收起
  150. * @property {Boolean} safe-area-inset-bottom 是否开启底部安全区适配(默认false)
  151. * @property {String} cancel-color 取消按钮的颜色(默认#606266)
  152. * @property {String} confirm-color 确认按钮的颜色(默认#2979ff)
  153. * @property {String} confirm-text 确认按钮的文字
  154. * @property {String} cancel-text 取消按钮的文字
  155. * @property {String} default-value 提供的默认选中的下标,见官网说明
  156. * @property {Boolean} mask-close-able 是否允许通过点击遮罩关闭Picker(默认true)
  157. * @property {String Number} z-index 弹出时的z-index值(默认10075)
  158. * @property {String} value-name 自定义list数据的value属性名 1.3.6
  159. * @property {String} label-name 自定义list数据的label属性名 1.3.6
  160. * @property {String} child-name 自定义list数据的children属性名,只对多列联动模式有效 1.3.7
  161. * @event {Function} confirm 点击确定按钮,返回当前选择的值
  162. * @example <u-select v-model="show" :list="list"></u-select>
  163. */var _default2 =
  164. {
  165. props: {
  166. // 列数据
  167. list: {
  168. type: Array,
  169. default: function _default() {
  170. return [];
  171. } },
  172. // 是否显示边框
  173. border: {
  174. type: Boolean,
  175. default: true },
  176. // 通过双向绑定控制组件的弹出与收起
  177. value: {
  178. type: Boolean,
  179. default: false },
  180. // "取消"按钮的颜色
  181. cancelColor: {
  182. type: String,
  183. default: '#606266' },
  184. // "确定"按钮的颜色
  185. confirmColor: {
  186. type: String,
  187. default: '#2979ff' },
  188. // 弹出的z-index值
  189. zIndex: {
  190. type: [String, Number],
  191. default: 0 },
  192. safeAreaInsetBottom: {
  193. type: Boolean,
  194. default: false },
  195. // 是否允许通过点击遮罩关闭Picker
  196. maskCloseAble: {
  197. type: Boolean,
  198. default: true },
  199. // 提供的默认选中的下标
  200. defaultValue: {
  201. type: Array,
  202. default: function _default() {
  203. return [0];
  204. } },
  205. // 模式选择,single-column-单列,mutil-column-多列,mutil-column-auto-多列联动
  206. mode: {
  207. type: String,
  208. default: 'single-column' },
  209. // 自定义value属性名
  210. valueName: {
  211. type: String,
  212. default: 'value' },
  213. // 自定义label属性名
  214. labelName: {
  215. type: String,
  216. default: 'label' },
  217. // 自定义多列联动模式的children属性名
  218. childName: {
  219. type: String,
  220. default: 'children' },
  221. // 顶部标题
  222. title: {
  223. type: String,
  224. default: '' },
  225. // 取消按钮的文字
  226. cancelText: {
  227. type: String,
  228. default: '取消' },
  229. // 确认按钮的文字
  230. confirmText: {
  231. type: String,
  232. default: '确认' } },
  233. data: function data() {
  234. return {
  235. // 用于列改变时,保存当前的索引,下一次变化时比较得出是哪一列发生了变化
  236. defaultSelector: [0],
  237. // picker-view的数据
  238. columnData: [],
  239. // 每次队列发生变化时,保存选择的结果
  240. selectValue: [],
  241. // 上一次列变化时的index
  242. lastSelectIndex: [],
  243. // 列数
  244. columnNum: 0,
  245. // 列是否还在滑动中,微信小程序如果在滑动中就点确定,结果可能不准确
  246. moving: false };
  247. },
  248. watch: {
  249. // 在select弹起的时候,重新初始化所有数据
  250. value: {
  251. immediate: true,
  252. handler: function handler(val) {var _this = this;
  253. if (val) setTimeout(function () {return _this.init();}, 10);
  254. } } },
  255. computed: {
  256. uZIndex: function uZIndex() {
  257. // 如果用户有传递z-index值,优先使用
  258. return this.zIndex ? this.zIndex : this.$u.zIndex.popup;
  259. } },
  260. methods: {
  261. // 标识滑动开始,只有微信小程序才有这样的事件
  262. pickstart: function pickstart() {
  263. this.moving = true;
  264. },
  265. // 标识滑动结束
  266. pickend: function pickend() {
  267. this.moving = false;
  268. },
  269. init: function init() {
  270. this.setColumnNum();
  271. this.setDefaultSelector();
  272. this.setColumnData();
  273. this.setSelectValue();
  274. },
  275. // 获取默认选中列下标
  276. setDefaultSelector: function setDefaultSelector() {
  277. // 如果没有传入默认选中的值,生成长度为columnNum,用0填充的数组
  278. this.defaultSelector = this.defaultValue.length == this.columnNum ? this.defaultValue : Array(this.columnNum).fill(0);
  279. this.lastSelectIndex = this.$u.deepClone(this.defaultSelector);
  280. },
  281. // 计算列数
  282. setColumnNum: function setColumnNum() {
  283. // 单列的列数为1
  284. if (this.mode == 'single-column') this.columnNum = 1;
  285. // 多列时,this.list数组长度就是列数
  286. else if (this.mode == 'mutil-column') this.columnNum = this.list.length;
  287. // 多列联动时,通过历遍this.list的第一个元素,得出有多少列
  288. else if (this.mode == 'mutil-column-auto') {
  289. var num = 1;
  290. var column = this.list;
  291. // 只要有元素并且第一个元素有children属性,继续历遍
  292. while (column[0][this.childName]) {
  293. column = column[0] ? column[0][this.childName] : {};
  294. num++;
  295. }
  296. this.columnNum = num;
  297. }
  298. },
  299. // 获取需要展示在picker中的列数据
  300. setColumnData: function setColumnData() {
  301. var data = [];
  302. this.selectValue = [];
  303. if (this.mode == 'mutil-column-auto') {
  304. // 获得所有数据中的第一个元素
  305. var column = this.list[this.defaultSelector.length ? this.defaultSelector[0] : 0];
  306. // 通过循环所有的列数,再根据设定列的数组,得出当前需要渲染的整个列数组
  307. for (var i = 0; i < this.columnNum; i++) {
  308. // 第一列默认为整个list数组
  309. if (i == 0) {
  310. data[i] = this.list;
  311. column = column[this.childName];
  312. } else {
  313. // 大于第一列时,判断是否有默认选中的,如果没有就用该列的第一项
  314. data[i] = column;
  315. column = column[this.defaultSelector[i]][this.childName];
  316. }
  317. }
  318. } else if (this.mode == 'single-column') {
  319. data[0] = this.list;
  320. } else {
  321. data = this.list;
  322. }
  323. this.columnData = data;
  324. },
  325. // 获取默认选中的值,如果没有设置defaultValue,就默认选中每列的第一个
  326. setSelectValue: function setSelectValue() {
  327. var tmp = null;
  328. for (var i = 0; i < this.columnNum; i++) {
  329. tmp = this.columnData[i][this.defaultSelector[i]];
  330. var data = {
  331. value: tmp ? tmp[this.valueName] : null,
  332. label: tmp ? tmp[this.labelName] : null };
  333. // 判断是否存在额外的参数,如果存在,就返回
  334. if (tmp && tmp.extra) data.extra = tmp.extra;
  335. this.selectValue.push(data);
  336. }
  337. },
  338. // 列选项
  339. columnChange: function columnChange(e) {var _this2 = this;
  340. var index = null;
  341. var columnIndex = e.detail.value;
  342. // 由于后面是需要push进数组的,所以需要先清空数组
  343. this.selectValue = [];
  344. if (this.mode == 'mutil-column-auto') {
  345. // 对比前后两个数组,寻找变更的是哪一列,如果某一个元素不同,即可判定该列发生了变化
  346. this.lastSelectIndex.map(function (val, idx) {
  347. if (val != columnIndex[idx]) index = idx;
  348. });
  349. this.defaultSelector = columnIndex;
  350. for (var i = index + 1; i < this.columnNum; i++) {
  351. // 当前变化列的下一列的数据,需要获取上一列的数据,同时需要指定是上一列的第几个的children,再往后的
  352. // 默认是队列的第一个为默认选项
  353. this.columnData[i] = this.columnData[i - 1][i - 1 == index ? columnIndex[index] : 0][this.childName];
  354. // 改变的列之后的所有列,默认选中第一个
  355. this.defaultSelector[i] = 0;
  356. }
  357. // 在历遍的过程中,可能由于上一步修改this.columnData,导致产生连锁反应,程序触发columnChange,会有多次调用
  358. // 只有在最后一次数据稳定后的结果是正确的,此前的历遍中,可能会产生undefined,故需要判断
  359. columnIndex.map(function (item, index) {
  360. var data = _this2.columnData[index][columnIndex[index]];
  361. var tmp = {
  362. value: data ? data[_this2.valueName] : null,
  363. label: data ? data[_this2.labelName] : null };
  364. // 判断是否有需要额外携带的参数
  365. if (data && data.extra !== undefined) tmp.extra = data.extra;
  366. _this2.selectValue.push(tmp);
  367. });
  368. // 保存这一次的结果,用于下次列发生变化时作比较
  369. this.lastSelectIndex = columnIndex;
  370. } else if (this.mode == 'single-column') {
  371. var data = this.columnData[0][columnIndex[0]];
  372. // 初始默认选中值
  373. var tmp = {
  374. value: data ? data[this.valueName] : null,
  375. label: data ? data[this.labelName] : null };
  376. // 判断是否有需要额外携带的参数
  377. if (data && data.extra !== undefined) tmp.extra = data.extra;
  378. this.selectValue.push(tmp);
  379. } else if (this.mode == 'mutil-column') {
  380. // 初始默认选中值
  381. columnIndex.map(function (item, index) {
  382. var data = _this2.columnData[index][columnIndex[index]];
  383. // 初始默认选中值
  384. var tmp = {
  385. value: data ? data[_this2.valueName] : null,
  386. label: data ? data[_this2.labelName] : null };
  387. // 判断是否有需要额外携带的参数
  388. if (data && data.extra !== undefined) tmp.extra = data.extra;
  389. _this2.selectValue.push(tmp);
  390. });
  391. }
  392. },
  393. close: function close() {
  394. this.$emit('input', false);
  395. },
  396. // 点击确定或者取消
  397. getResult: function getResult() {var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
  398. if (this.moving) return;
  399. if (event) this.$emit(event, this.selectValue);
  400. this.close();
  401. },
  402. selectHandler: function selectHandler() {
  403. this.$emit('click');
  404. } } };exports.default = _default2;
  405. /***/ }),
  406. /***/ 286:
  407. /*!****************************************************************************************************************************************!*\
  408. !*** E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=style&index=0&id=a577ac80&scoped=true&lang=scss& ***!
  409. \****************************************************************************************************************************************/
  410. /*! no static exports found */
  411. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  412. "use strict";
  413. __webpack_require__.r(__webpack_exports__);
  414. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-select.vue?vue&type=style&index=0&id=a577ac80&scoped=true&lang=scss& */ 287);
  415. /* harmony import */ var _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__);
  416. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  417. /* harmony default export */ __webpack_exports__["default"] = (_G_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_G_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_G_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_G_HBuilderX_plugins_uniapp_cli_node_modules_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_G_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_select_vue_vue_type_style_index_0_id_a577ac80_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0___default.a);
  418. /***/ }),
  419. /***/ 287:
  420. /*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  421. !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!E:/.swdz/uni-app/baoma/mabao/uview-ui/components/u-select/u-select.vue?vue&type=style&index=0&id=a577ac80&scoped=true&lang=scss& ***!
  422. \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  423. /*! no static exports found */
  424. /***/ (function(module, exports, __webpack_require__) {
  425. // extracted by mini-css-extract-plugin
  426. if(false) { var cssReload; }
  427. /***/ })
  428. }]);
  429. //# sourceMappingURL=../../../../.sourcemap/mp-weixin/uview-ui/components/u-select/u-select.js.map
  430. ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
  431. 'uview-ui/components/u-select/u-select-create-component',
  432. {
  433. 'uview-ui/components/u-select/u-select-create-component':(function(module, exports, __webpack_require__){
  434. __webpack_require__('1')['createComponent'](__webpack_require__(281))
  435. })
  436. },
  437. [['uview-ui/components/u-select/u-select-create-component']]
  438. ]);