u-rate.js 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["uview-ui/components/u-rate/u-rate"],{
  2. /***/ 204:
  3. /*!****************************************************************************!*\
  4. !*** D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.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_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./u-rate.vue?vue&type=template&id=533abf00&scoped=true& */ 205);
  11. /* harmony import */ var _u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./u-rate.vue?vue&type=script&lang=js& */ 207);
  12. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _u_rate_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_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  13. /* harmony import */ var _u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./u-rate.vue?vue&type=style&index=0&id=533abf00&scoped=true&lang=scss& */ 209);
  14. /* harmony import */ var _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 11);
  15. var renderjs
  16. /* normalize component */
  17. var component = Object(_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_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  19. _u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
  20. _u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  21. false,
  22. null,
  23. "533abf00",
  24. null,
  25. false,
  26. _u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
  27. renderjs
  28. )
  29. component.options.__file = "uview-ui/components/u-rate/u-rate.vue"
  30. /* harmony default export */ __webpack_exports__["default"] = (component.exports);
  31. /***/ }),
  32. /***/ 205:
  33. /*!***********************************************************************************************************************!*\
  34. !*** D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=template&id=533abf00&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 _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--16-0!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-rate.vue?vue&type=template&id=533abf00&scoped=true& */ 206);
  41. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  42. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  43. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  44. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_16_0_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_template_id_533abf00_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  45. /***/ }),
  46. /***/ 206:
  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!D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=template&id=533abf00&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. try {
  60. components = {
  61. uIcon: function() {
  62. return __webpack_require__.e(/*! import() | uview-ui/components/u-icon/u-icon */ "uview-ui/components/u-icon/u-icon").then(__webpack_require__.bind(null, /*! @/uview-ui/components/u-icon/u-icon.vue */ 240))
  63. }
  64. }
  65. } catch (e) {
  66. if (
  67. e.message.indexOf("Cannot find module") !== -1 &&
  68. e.message.indexOf(".vue") !== -1
  69. ) {
  70. console.error(e.message)
  71. console.error("1. 排查组件名称拼写是否正确")
  72. console.error(
  73. "2. 排查组件是否符合 easycom 规范,文档:https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"
  74. )
  75. console.error(
  76. "3. 若组件不符合 easycom 规范,需手动引入,并在 components 中注册该组件"
  77. )
  78. } else {
  79. throw e
  80. }
  81. }
  82. var render = function() {
  83. var _vm = this
  84. var _h = _vm.$createElement
  85. var _c = _vm._self._c || _h
  86. var l0 = _vm.__map(_vm.count, function(item, index) {
  87. var $orig = _vm.__get_orig(item)
  88. var a0 = {
  89. fontSize: _vm.size + "rpx",
  90. padding: "0 " + (_vm.gutter / 2 + "rpx")
  91. }
  92. return {
  93. $orig: $orig,
  94. a0: a0
  95. }
  96. })
  97. _vm.$mp.data = Object.assign(
  98. {},
  99. {
  100. $root: {
  101. l0: l0
  102. }
  103. }
  104. )
  105. }
  106. var recyclableRender = false
  107. var staticRenderFns = []
  108. render._withStripped = true
  109. /***/ }),
  110. /***/ 207:
  111. /*!*****************************************************************************************************!*\
  112. !*** D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=script&lang=js& ***!
  113. \*****************************************************************************************************/
  114. /*! no static exports found */
  115. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  116. "use strict";
  117. __webpack_require__.r(__webpack_exports__);
  118. /* harmony import */ var _HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--12-1!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-rate.vue?vue&type=script&lang=js& */ 208);
  119. /* harmony import */ var _HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  120. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_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 _HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  121. /* harmony default export */ __webpack_exports__["default"] = (_HbuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_12_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  122. /***/ }),
  123. /***/ 208:
  124. /*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  125. !*** ./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!D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=script&lang=js& ***!
  126. \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  127. /*! no static exports found */
  128. /***/ (function(module, exports, __webpack_require__) {
  129. "use strict";
  130. Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0; //
  131. //
  132. //
  133. //
  134. //
  135. //
  136. //
  137. //
  138. //
  139. //
  140. //
  141. //
  142. //
  143. //
  144. //
  145. //
  146. //
  147. //
  148. //
  149. /**
  150. * rate 评分
  151. * @description 该组件一般用于满意度调查,星型评分的场景
  152. * @tutorial https://www.uviewui.com/components/rate.html
  153. * @property {String Number} count 最多可选的星星数量(默认5)
  154. * @property {String Number} current 默认选中的星星数量(默认0)
  155. * @property {Boolean} disabled 是否禁止用户操作(默认false)
  156. * @property {String Number} size 星星的大小,单位rpx(默认32)
  157. * @property {String} inactive-color 未选中星星的颜色(默认#b2b2b2)
  158. * @property {String} active-color 选中的星星颜色(默认#FA3534)
  159. * @property {String} active-icon 选中时的图标名,只能为uView的内置图标(默认star-fill)
  160. * @property {String} inactive-icon 未选中时的图标名,只能为uView的内置图标(默认star)
  161. * @property {String} gutter 星星之间的距离(默认10)
  162. * @property {String Number} min-count 最少选中星星的个数(默认0)
  163. * @property {Boolean} allow-half 是否允许半星选择(默认false)
  164. * @event {Function} change 选中的星星发生变化时触发
  165. * @example <u-rate :count="count" :current="2"></u-rate>
  166. */var _default2 =
  167. {
  168. name: 'u-rate',
  169. props: {
  170. // 用于v-model双向绑定选中的星星数量
  171. // 1.4.5版新增
  172. value: {
  173. type: [Number, String],
  174. default: -1 },
  175. // 要显示的星星数量
  176. count: {
  177. type: [Number, String],
  178. default: 5 },
  179. // 当前需要默认选中的星星(选中的个数)
  180. // 1.4.5后通过value双向绑定,不再建议使用此参数
  181. current: {
  182. type: [Number, String],
  183. default: 0 },
  184. // 是否不可选中
  185. disabled: {
  186. type: Boolean,
  187. default: false },
  188. // 星星的大小,单位rpx
  189. size: {
  190. type: [Number, String],
  191. default: 32 },
  192. // 未选中时的颜色
  193. inactiveColor: {
  194. type: String,
  195. default: '#b2b2b2' },
  196. // 选中的颜色
  197. activeColor: {
  198. type: String,
  199. default: '#FA3534' },
  200. // 星星之间的间距,单位rpx
  201. gutter: {
  202. type: [Number, String],
  203. default: 10 },
  204. // 最少能选择的星星个数
  205. minCount: {
  206. type: [Number, String],
  207. default: 0 },
  208. // 是否允许半星(功能尚未实现)
  209. allowHalf: {
  210. type: Boolean,
  211. default: false },
  212. // 选中时的图标(星星)
  213. activeIcon: {
  214. type: String,
  215. default: 'star-fill' },
  216. // 未选中时的图标(星星)
  217. inactiveIcon: {
  218. type: String,
  219. default: 'star' },
  220. // 自定义扩展前缀,方便用户扩展自己的图标库
  221. customPrefix: {
  222. type: String,
  223. default: 'uicon' },
  224. colors: {
  225. type: Array,
  226. default: function _default() {
  227. return [];
  228. } },
  229. icons: {
  230. type: Array,
  231. default: function _default() {
  232. return [];
  233. } } },
  234. data: function data() {
  235. return {
  236. // 生成一个唯一id,否则一个页面多个评分组件,会造成冲突
  237. elId: this.$u.guid(),
  238. elClass: this.$u.guid(),
  239. starBoxLeft: 0, // 评分盒子左边到屏幕左边的距离,用于滑动选择时计算距离
  240. // 当前激活的星星的index,如果存在value,优先使用value,因为它可以双向绑定(1.4.5新增)
  241. activeIndex: this.value != -1 ? this.value : this.current,
  242. starWidth: 0, // 每个星星的宽度
  243. starWidthArr: [] //每个星星最右边到组件盒子最左边的距离
  244. };
  245. },
  246. watch: {
  247. current: function current(val) {
  248. this.activeIndex = val;
  249. },
  250. value: function value(val) {
  251. this.activeIndex = val;
  252. } },
  253. computed: {
  254. decimal: function decimal() {
  255. if (this.disabled) {
  256. return this.activeIndex * 100 % 100;
  257. } else if (this.allowHalf) {
  258. return 50;
  259. }
  260. },
  261. elActiveIcon: function elActiveIcon() {
  262. var len = this.icons.length;
  263. // 此处规则类似于下方的elActiveColor参数,都是根据一定的规则,显示不同的图标
  264. // 结果可能如此:icons参数传递了3个图标,当选中两个时,用第一个图标,4个时,用第二个图标
  265. // 第三个时,用第三个图标作为激活的图标
  266. if (len && len <= this.count) {
  267. var step = Math.round(this.activeIndex / Math.round(this.count / len));
  268. if (step < 1) return this.icons[0];
  269. if (step > len) return this.icons[len - 1];
  270. return this.icons[step - 1];
  271. }
  272. return this.activeIcon;
  273. },
  274. elActiveColor: function elActiveColor() {
  275. var len = this.colors.length;
  276. // 如果有设置colors参数(此参数用于将图标分段,比如一共5颗星,colors传3个颜色值,那么根据一定的规则,2颗星可能为第一个颜色
  277. // 4颗星为第二个颜色值,5颗星为第三个颜色值)
  278. if (len && len <= this.count) {
  279. var step = Math.round(this.activeIndex / Math.round(this.count / len));
  280. if (step < 1) return this.colors[0];
  281. if (step > len) return this.colors[len - 1];
  282. return this.colors[step - 1];
  283. }
  284. return this.activeColor;
  285. } },
  286. methods: {
  287. // 获取评分组件盒子的布局信息
  288. getElRectById: function getElRectById() {var _this = this;
  289. // uView封装的获取节点的方法,详见文档
  290. this.$uGetRect('#' + this.elId).then(function (res) {
  291. _this.starBoxLeft = res.left;
  292. });
  293. },
  294. // 获取单个星星的尺寸
  295. getElRectByClass: function getElRectByClass() {var _this2 = this;
  296. // uView封装的获取节点的方法,详见文档
  297. this.$uGetRect('.' + this.elClass).then(function (res) {
  298. _this2.starWidth = res.width;
  299. // 把每个星星右边到组件盒子左边的距离放入数组中
  300. for (var i = 0; i < _this2.count; i++) {
  301. _this2.starWidthArr[i] = (i + 1) * _this2.starWidth;
  302. }
  303. });
  304. },
  305. // 手指滑动
  306. touchMove: function touchMove(e) {
  307. if (this.disabled) {
  308. return;
  309. }
  310. if (!e.changedTouches[0]) {
  311. return;
  312. }
  313. var movePageX = e.changedTouches[0].pageX;
  314. // 滑动点相对于评分盒子左边的距离
  315. var distance = movePageX - this.starBoxLeft;
  316. // 如果滑动到了评分盒子的左边界,就设置为0星
  317. if (distance <= 0) {
  318. this.activeIndex = 0;
  319. }
  320. // 滑动的距离,相当于多少颗星星
  321. var index = Math.ceil(distance / this.starWidth);
  322. this.activeIndex = index > this.count ? this.count : index;
  323. // 对最少颗星星的限制
  324. if (this.activeIndex < this.minCount) this.activeIndex = this.minCount;
  325. this.emitEvent();
  326. },
  327. // 通过点击,直接选中
  328. click: function click(index, e) {
  329. if (this.disabled) {
  330. return;
  331. }
  332. // 半星选择,尚未实现
  333. if (this.allowHalf) {
  334. }
  335. // 对第一个星星特殊处理,只有一个的时候,点击可以取消,否则无法作0星评价
  336. if (index == 1) {
  337. if (this.activeIndex == 1) {
  338. this.activeIndex = 0;
  339. } else {
  340. this.activeIndex = 1;
  341. }
  342. } else {
  343. this.activeIndex = index;
  344. }
  345. // 对最少颗星星的限制
  346. if (this.activeIndex < this.minCount) this.activeIndex = this.minCount;
  347. this.emitEvent();
  348. },
  349. // 发出事件
  350. emitEvent: function emitEvent() {
  351. // 发出change事件
  352. this.$emit('change', this.activeIndex);
  353. // 同时修改双向绑定的value的值
  354. if (this.value != -1) {
  355. this.$emit('input', this.activeIndex);
  356. }
  357. },
  358. showDecimalIcon: function showDecimalIcon(index) {
  359. return this.disabled && parseInt(this.activeIndex) === index;
  360. } },
  361. mounted: function mounted() {
  362. this.getElRectById();
  363. this.getElRectByClass();
  364. } };exports.default = _default2;
  365. /***/ }),
  366. /***/ 209:
  367. /*!**************************************************************************************************************************************!*\
  368. !*** D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=style&index=0&id=533abf00&scoped=true&lang=scss& ***!
  369. \**************************************************************************************************************************************/
  370. /*! no static exports found */
  371. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  372. "use strict";
  373. __webpack_require__.r(__webpack_exports__);
  374. /* harmony import */ var _HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--8-oneOf-1-3!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../HbuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./u-rate.vue?vue&type=style&index=0&id=533abf00&scoped=true&lang=scss& */ 210);
  375. /* harmony import */ var _HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__);
  376. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  377. /* harmony default export */ __webpack_exports__["default"] = (_HbuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_HbuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_HbuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_HbuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_u_rate_vue_vue_type_style_index_0_id_533abf00_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0___default.a);
  378. /***/ }),
  379. /***/ 210:
  380. /*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  381. !*** ./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/@dcloudio/vue-cli-plugin-uni/packages/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!D:/HbuderX-exercise/swim-weapp/uview-ui/components/u-rate/u-rate.vue?vue&type=style&index=0&id=533abf00&scoped=true&lang=scss& ***!
  382. \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  383. /*! no static exports found */
  384. /***/ (function(module, exports, __webpack_require__) {
  385. // extracted by mini-css-extract-plugin
  386. if(false) { var cssReload; }
  387. /***/ })
  388. }]);
  389. //# sourceMappingURL=../../../../.sourcemap/mp-weixin/uview-ui/components/u-rate/u-rate.js.map
  390. ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
  391. 'uview-ui/components/u-rate/u-rate-create-component',
  392. {
  393. 'uview-ui/components/u-rate/u-rate-create-component':(function(module, exports, __webpack_require__){
  394. __webpack_require__('1')['createComponent'](__webpack_require__(204))
  395. })
  396. },
  397. [['uview-ui/components/u-rate/u-rate-create-component']]
  398. ]);