uqrcode.js 57 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode"],{
  2. /***/ 893:
  3. /*!*********************************************************************************************!*\
  4. !*** F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.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 _uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./uqrcode.vue?vue&type=template&id=b7042062&scoped=true& */ 894);
  11. /* harmony import */ var _uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./uqrcode.vue?vue&type=script&lang=js& */ 896);
  12. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  13. /* harmony import */ var _uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./uqrcode.vue?vue&type=style&index=0&id=b7042062&scoped=true&lang=css& */ 901);
  14. /* harmony import */ var _D_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 */ 35);
  15. var renderjs
  16. /* normalize component */
  17. var component = Object(_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
  18. _uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  19. _uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
  20. _uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  21. false,
  22. null,
  23. "b7042062",
  24. null,
  25. false,
  26. _uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
  27. renderjs
  28. )
  29. component.options.__file = "uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue"
  30. /* harmony default export */ __webpack_exports__["default"] = (component.exports);
  31. /***/ }),
  32. /***/ 894:
  33. /*!****************************************************************************************************************************************!*\
  34. !*** F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=template&id=b7042062&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 _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_template_id_b7042062_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--17-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!./uqrcode.vue?vue&type=template&id=b7042062&scoped=true& */ 895);
  41. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  42. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  43. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  44. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_template_id_b7042062_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  45. /***/ }),
  46. /***/ 895:
  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--17-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!F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=template&id=b7042062&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. var render = function () {
  60. var _vm = this
  61. var _h = _vm.$createElement
  62. var _c = _vm._self._c || _h
  63. _vm.$initSSP()
  64. if (_vm.$scope.data.scopedSlotsCompiler === "augmented") {
  65. _vm.$setSSP("error", {
  66. error: _vm.error,
  67. })
  68. }
  69. _vm.$callSSP()
  70. }
  71. var recyclableRender = false
  72. var staticRenderFns = []
  73. render._withStripped = true
  74. /***/ }),
  75. /***/ 896:
  76. /*!**********************************************************************************************************************!*\
  77. !*** F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=script&lang=js& ***!
  78. \**********************************************************************************************************************/
  79. /*! no static exports found */
  80. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  81. "use strict";
  82. __webpack_require__.r(__webpack_exports__);
  83. /* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_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--13-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!./uqrcode.vue?vue&type=script&lang=js& */ 897);
  84. /* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  85. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  86. /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  87. /***/ }),
  88. /***/ 897:
  89. /*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  90. !*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-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!F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=script&lang=js& ***!
  91. \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  92. /*! no static exports found */
  93. /***/ (function(module, exports, __webpack_require__) {
  94. "use strict";
  95. /* WEBPACK VAR INJECTION */(function(uni, wx) {
  96. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  97. Object.defineProperty(exports, "__esModule", {
  98. value: true
  99. });
  100. exports.default = void 0;
  101. var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ 59));
  102. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  103. var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/asyncToGenerator */ 61));
  104. var _uqrcode = _interopRequireDefault(__webpack_require__(/*! ../../js_sdk/uqrcode/uqrcode */ 898));
  105. var _queue = __webpack_require__(/*! ../../common/queue */ 899);
  106. var _cache = __webpack_require__(/*! ../../common/cache */ 900);
  107. function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
  108. function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
  109. var instance = null;
  110. var _default2 = {
  111. name: 'uqrcode',
  112. props: {
  113. /**
  114. * canvas组件id
  115. */
  116. canvasId: {
  117. type: String,
  118. required: true // canvasId在微信小程序初始值不能为空,created中赋值也不行,必须给一个值,否则挂载组件后无法绘制。不考虑用随机id,uuid
  119. },
  120. /**
  121. * 二维码内容
  122. */
  123. value: {
  124. type: [String, Number]
  125. },
  126. /**
  127. * 选项
  128. */
  129. options: {
  130. type: Object,
  131. default: function _default() {
  132. return {};
  133. }
  134. },
  135. /**
  136. * 二维码大小
  137. */
  138. size: {
  139. type: [String, Number],
  140. default: 200
  141. },
  142. /**
  143. * 二维码尺寸单位
  144. */
  145. sizeUnit: {
  146. type: String,
  147. default: 'px'
  148. },
  149. /**
  150. * 导出的文件类型
  151. */
  152. fileType: {
  153. type: String,
  154. default: 'png'
  155. },
  156. /**
  157. * 是否初始化组件后就开始生成
  158. */
  159. start: {
  160. type: Boolean,
  161. default: true
  162. },
  163. /**
  164. * 是否数据发生改变自动重绘
  165. */
  166. auto: {
  167. type: Boolean,
  168. default: true
  169. },
  170. /**
  171. * 隐藏组件
  172. */
  173. hide: {
  174. type: Boolean,
  175. default: false
  176. },
  177. /**
  178. * canvas 类型,微信小程序默认使用2d,非2d微信官方已放弃维护,问题比较多
  179. * 注意:微信小程序type2d手机上正常,PC上微信内打开小程序toDataURL报错,看后期微信官方团队会不会做兼容,不兼容的话只能在自行判断在PC使用非2d,或者直接提示用户请在手机上操作,微信团队的海报中心小程序就是这么做的
  180. */
  181. type: {
  182. type: String,
  183. default: function _default() {
  184. return '2d';
  185. }
  186. },
  187. /**
  188. * 队列绘制,主要针对NVue端
  189. */
  190. queue: {
  191. type: Boolean,
  192. default: false
  193. },
  194. /**
  195. * 是否队列加载图片,可减少canvas发起的网络资源请求,节省服务器资源
  196. */
  197. isQueueLoadImage: {
  198. type: Boolean,
  199. default: false
  200. },
  201. /**
  202. * loading态
  203. */
  204. loading: {
  205. type: Boolean,
  206. default: undefined
  207. },
  208. /**
  209. * H5保存即自动下载(在支持的环境下),默认false为仅弹层提示用户需要长按图片保存,不会自动下载
  210. */
  211. h5SaveIsDownload: {
  212. type: Boolean,
  213. default: false
  214. },
  215. /**
  216. * H5下载名称
  217. */
  218. h5DownloadName: {
  219. type: String,
  220. default: 'uQRCode'
  221. }
  222. },
  223. data: function data() {
  224. return {
  225. canvas: undefined,
  226. canvasType: undefined,
  227. canvasContext: undefined,
  228. makeDelegate: undefined,
  229. drawDelegate: undefined,
  230. toTempFilePathDelegate: undefined,
  231. makeExecuted: false,
  232. makeing: false,
  233. drawing: false,
  234. isError: false,
  235. error: undefined,
  236. isH5Save: false,
  237. tempFilePath: '',
  238. templateOptions: {
  239. size: 0,
  240. width: 0,
  241. // 组件宽度
  242. height: 0,
  243. canvasWidth: 0,
  244. // canvas宽度
  245. canvasHeight: 0,
  246. canvasTransform: '',
  247. canvasDisplay: false
  248. },
  249. uqrcodeOptions: {
  250. data: ''
  251. },
  252. plugins: [],
  253. makeingPattern: [[[true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true]], [[true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, false, false, false], [true, true, true, true, true, true, false, true, true, true], [true, true, true, true, true, true, false, true, true, true], [true, true, true, true, true, true, false, true, true, true]], [[true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true], [true, true, true, true, true, true, true, false, false, false], [true, true, true, true, true, true, true, false, false, false], [true, true, true, true, true, true, true, false, false, false], [true, true, true, false, false, false, false, true, true, true], [true, true, true, false, false, false, false, true, true, true]], [[true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, false, false, false, false, false, false, false], [true, true, true, false, false, false, false, false, false, false], [true, true, true, false, false, false, false, false, false, false], [true, true, true, false, false, false, false, false, false, false], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true], [true, true, true, true, true, true, true, true, true, true]]]
  254. };
  255. },
  256. watch: {
  257. type: {
  258. handler: function handler(val) {
  259. var types = ['2d'];
  260. if (types.includes(val)) {
  261. this.canvasType = val;
  262. } else {
  263. this.canvasType = undefined;
  264. }
  265. },
  266. immediate: true
  267. },
  268. value: {
  269. handler: function handler() {
  270. if (this.auto) {
  271. this.remake();
  272. }
  273. }
  274. },
  275. size: {
  276. handler: function handler() {
  277. if (this.auto) {
  278. this.remake();
  279. }
  280. }
  281. },
  282. options: {
  283. handler: function handler() {
  284. if (this.auto) {
  285. this.remake();
  286. }
  287. },
  288. deep: true
  289. },
  290. makeing: {
  291. handler: function handler(val) {
  292. if (!val) {
  293. if (typeof this.toTempFilePathDelegate === 'function') {
  294. this.toTempFilePathDelegate();
  295. }
  296. }
  297. }
  298. }
  299. },
  300. mounted: function mounted() {
  301. this.templateOptions.size = this.sizeUnit == 'rpx' ? uni.upx2px(this.size) : this.size;
  302. this.templateOptions.width = this.templateOptions.size;
  303. this.templateOptions.height = this.templateOptions.size;
  304. this.templateOptions.canvasWidth = this.templateOptions.size;
  305. this.templateOptions.canvasHeight = this.templateOptions.size;
  306. if (this.canvasType == '2d') {} else {
  307. this.templateOptions.canvasTransform = "scale(".concat(this.templateOptions.size / this.templateOptions.canvasWidth, ", ").concat(this.templateOptions.size / this.templateOptions.canvasHeight, ")");
  308. }
  309. if (this.start) {
  310. this.make();
  311. }
  312. },
  313. methods: {
  314. /**
  315. * 获取模板选项
  316. */
  317. getTemplateOptions: function getTemplateOptions() {
  318. var size = this.sizeUnit == 'rpx' ? uni.upx2px(this.size) : this.size;
  319. return deepReplace(this.templateOptions, {
  320. size: size,
  321. width: size,
  322. height: size
  323. });
  324. },
  325. /**
  326. * 获取插件选项
  327. */
  328. getUqrcodeOptions: function getUqrcodeOptions() {
  329. return deepReplace(this.options, {
  330. data: String(this.value),
  331. size: Number(this.templateOptions.size)
  332. });
  333. },
  334. /**
  335. * 重置画布
  336. */
  337. resetCanvas: function resetCanvas(callback) {
  338. var _this = this;
  339. this.templateOptions.canvasDisplay = false;
  340. this.$nextTick(function () {
  341. _this.templateOptions.canvasDisplay = true;
  342. _this.$nextTick(function () {
  343. callback && callback();
  344. });
  345. });
  346. },
  347. /**
  348. * 绘制二维码
  349. */
  350. draw: function draw() {
  351. var _arguments = arguments,
  352. _this2 = this;
  353. return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
  354. var callback, isDrawDelegate, qr, canvasContext, canvas, dpr;
  355. return _regenerator.default.wrap(function _callee$(_context) {
  356. while (1) {
  357. switch (_context.prev = _context.next) {
  358. case 0:
  359. callback = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : {};
  360. isDrawDelegate = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : false;
  361. if (typeof callback.success != 'function') {
  362. callback.success = function () {};
  363. }
  364. if (typeof callback.fail != 'function') {
  365. callback.fail = function () {};
  366. }
  367. if (typeof callback.complete != 'function') {
  368. callback.complete = function () {};
  369. }
  370. if (!_this2.drawing) {
  371. _context.next = 11;
  372. break;
  373. }
  374. if (isDrawDelegate) {
  375. _context.next = 9;
  376. break;
  377. }
  378. _this2.drawDelegate = function () {
  379. _this2.draw(callback, true);
  380. };
  381. return _context.abrupt("return");
  382. case 9:
  383. _context.next = 12;
  384. break;
  385. case 11:
  386. _this2.drawing = true;
  387. case 12:
  388. if (_this2.canvasId) {
  389. _context.next = 19;
  390. break;
  391. }
  392. console.error('[uQRCode]: canvasId must be set!');
  393. _this2.isError = true;
  394. _this2.drawing = false;
  395. callback.fail({
  396. errMsg: '[uQRCode]: canvasId must be set!'
  397. });
  398. callback.complete({
  399. errMsg: '[uQRCode]: canvasId must be set!'
  400. });
  401. return _context.abrupt("return");
  402. case 19:
  403. if (_this2.value) {
  404. _context.next = 26;
  405. break;
  406. }
  407. console.error('[uQRCode]: value must be set!');
  408. _this2.isError = true;
  409. _this2.drawing = false;
  410. callback.fail({
  411. errMsg: '[uQRCode]: value must be set!'
  412. });
  413. callback.complete({
  414. errMsg: '[uQRCode]: value must be set!'
  415. });
  416. return _context.abrupt("return");
  417. case 26:
  418. /* 组件数据 */
  419. _this2.templateOptions = _this2.getTemplateOptions();
  420. /* uQRCode选项 */
  421. _this2.uqrcodeOptions = _this2.getUqrcodeOptions();
  422. /* 纠错等级兼容字母写法 */
  423. if (typeof _this2.uqrcodeOptions.errorCorrectLevel === 'string') {
  424. _this2.uqrcodeOptions.errorCorrectLevel = _uqrcode.default.errorCorrectLevel[_this2.uqrcodeOptions.errorCorrectLevel];
  425. }
  426. /* nvue不支持动态修改gcanvas尺寸,除nvue外,默认使用useDynamicSize */
  427. if (typeof _this2.options.useDynamicSize === 'undefined') {
  428. _this2.uqrcodeOptions.useDynamicSize = true;
  429. }
  430. /* 获取uQRCode实例 */
  431. qr = instance = new _uqrcode.default();
  432. /* 注册扩展 */
  433. _this2.plugins.forEach(function (p) {
  434. return qr.register(p.plugin);
  435. });
  436. /* 设置uQRCode选项 */
  437. qr.setOptions(_this2.uqrcodeOptions);
  438. /* 调用制作二维码方法 */
  439. qr.make();
  440. /* 获取canvas上下文 */
  441. canvasContext = null;
  442. if (!(_this2.canvasType === '2d')) {
  443. _context.next = 50;
  444. break;
  445. }
  446. _context.next = 38;
  447. return new Promise(function (resolve) {
  448. uni.createSelectorQuery().in(_this2) // 在组件内使用需要
  449. .select("#".concat(_this2.canvasId)).fields({
  450. node: true,
  451. size: true
  452. }).exec(function (res) {
  453. resolve(res[0].node);
  454. });
  455. });
  456. case 38:
  457. canvas = _this2.canvas = _context.sent;
  458. canvasContext = _this2.canvasContext = canvas.getContext('2d');
  459. /* 2d的组件设置宽高与实际canvas绘制宽高不是一个,打个比方,组件size=200,canvas.width设置为100,那么绘制出来就是100=200,组件size=400,canvas.width设置为800,绘制大小还是800=400,所以无需理会下方返回的dynamicSize是多少,按dpr重新赋值给canvas即可 */
  460. _this2.templateOptions.canvasWidth = qr.size;
  461. _this2.templateOptions.canvasHeight = qr.size;
  462. _this2.templateOptions.canvasTransform = '';
  463. /* 使用dynamicSize+scale,可以解决小块间出现白线问题,dpr可以解决模糊问题 */
  464. dpr = uni.getSystemInfoSync().pixelRatio;
  465. canvas.width = qr.dynamicSize * dpr;
  466. canvas.height = qr.dynamicSize * dpr;
  467. canvasContext.scale(dpr, dpr);
  468. /* 微信小程序获取图像方式 */
  469. qr.loadImage = _this2.getLoadImage(function (src) {
  470. /* 小程序下获取网络图片信息需先配置download域名白名单才能生效 */
  471. return new Promise(function (resolve, reject) {
  472. var img = canvas.createImage();
  473. img.src = src;
  474. img.onload = function () {
  475. resolve(img);
  476. };
  477. img.onerror = function (err) {
  478. reject(err);
  479. };
  480. });
  481. });
  482. _context.next = 55;
  483. break;
  484. case 50:
  485. /* uniapp获取canvas上下文方式 */
  486. canvasContext = _this2.canvasContext = uni.createCanvasContext(_this2.canvasId, _this2);
  487. /* 使用dynamicSize,可以解决小块间出现白线问题,再通过scale缩放至size,使其达到所设尺寸 */
  488. _this2.templateOptions.canvasWidth = qr.dynamicSize;
  489. _this2.templateOptions.canvasHeight = qr.dynamicSize;
  490. _this2.templateOptions.canvasTransform = "scale(".concat(_this2.templateOptions.size / _this2.templateOptions.canvasWidth, ", ").concat(_this2.templateOptions.size / _this2.templateOptions.canvasHeight, ")");
  491. /* uniapp获取图像方式 */
  492. qr.loadImage = _this2.getLoadImage(function (src) {
  493. return new Promise(function (resolve, reject) {
  494. /* getImageInfo在微信小程序的bug:本地路径返回路径会把开头的/或../移除,导致路径错误,解决方法:限制只能使用绝对路径 */
  495. if (src.startsWith('http')) {
  496. uni.getImageInfo({
  497. src: src,
  498. success: function success(res) {
  499. resolve(res.path);
  500. },
  501. fail: function fail(err) {
  502. reject(err);
  503. }
  504. });
  505. } else {
  506. if (src.startsWith('.')) {
  507. console.error('[uQRCode]: 本地图片路径仅支持绝对路径!');
  508. throw new Error('[uQRCode]: local image path only supports absolute path!');
  509. } else {
  510. resolve(src);
  511. }
  512. }
  513. });
  514. });
  515. case 55:
  516. /* 设置uQRCode实例的canvas上下文 */
  517. qr.canvasContext = canvasContext;
  518. /* 延时等待页面重新绘制完毕 */
  519. setTimeout(function () {
  520. /* 从插件获取具体要调用哪一个扩展函数 */
  521. var plugin = _this2.plugins.find(function (p) {
  522. return p.name == qr.style;
  523. });
  524. var drawCanvasName = plugin ? plugin.drawCanvas : 'drawCanvas';
  525. /* 虽然qr[drawCanvasName]是直接返回Promise的,但由于js内部this指向问题,故不能直接exec(qr[drawCanvasName])此方式执行,需要改成exec(() => qr[drawCanvasName]())才能正确获取this */
  526. var drawCanvas;
  527. if (_this2.queue) {
  528. drawCanvas = function drawCanvas() {
  529. return _queue.queueDraw.exec(function () {
  530. return qr[drawCanvasName]();
  531. });
  532. };
  533. // drawCanvas = () => queueDraw.exec(() => new Promise((resolve, reject) => {
  534. // setTimeout(() => {
  535. // qr[drawCanvasName]().then(resolve).catch(reject);
  536. // }, 1000);
  537. // }));
  538. } else {
  539. drawCanvas = function drawCanvas() {
  540. return qr[drawCanvasName]();
  541. };
  542. }
  543. /* 调用绘制方法将二维码图案绘制到canvas上 */
  544. drawCanvas().then(function () {
  545. if (_this2.drawDelegate) {
  546. /* 高频重绘纠正 */
  547. var delegate = _this2.drawDelegate;
  548. _this2.drawDelegate = undefined;
  549. delegate();
  550. } else {
  551. _this2.drawing = false;
  552. callback.success();
  553. }
  554. }).catch(function (err) {
  555. console.log(err);
  556. if (_this2.drawDelegate) {
  557. /* 高频重绘纠正 */
  558. var delegate = _this2.drawDelegate;
  559. _this2.drawDelegate = undefined;
  560. delegate();
  561. } else {
  562. _this2.drawing = false;
  563. _this2.isError = true;
  564. callback.fail(err);
  565. }
  566. }).finally(function () {
  567. callback.complete();
  568. });
  569. }, 300);
  570. case 57:
  571. case "end":
  572. return _context.stop();
  573. }
  574. }
  575. }, _callee);
  576. }))();
  577. },
  578. /**
  579. * 生成二维码
  580. */
  581. make: function make() {
  582. var _this3 = this;
  583. var callback = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  584. this.makeExecuted = true;
  585. this.makeing = true;
  586. this.isError = false;
  587. if (typeof callback.success != 'function') {
  588. callback.success = function () {};
  589. }
  590. if (typeof callback.fail != 'function') {
  591. callback.fail = function () {};
  592. }
  593. if (typeof callback.complete != 'function') {
  594. callback.complete = function () {};
  595. }
  596. this.resetCanvas(function () {
  597. clearTimeout(_this3.makeDelegate);
  598. _this3.makeDelegate = setTimeout(function () {
  599. _this3.draw({
  600. success: function success() {
  601. setTimeout(function () {
  602. callback.success();
  603. _this3.complete(true);
  604. }, 300);
  605. },
  606. fail: function fail(err) {
  607. callback.fail(err);
  608. _this3.error = err;
  609. _this3.complete(false, err.errMsg);
  610. },
  611. complete: function complete() {
  612. callback.complete();
  613. _this3.makeing = false;
  614. }
  615. });
  616. }, 300);
  617. });
  618. },
  619. /**
  620. * 重新生成
  621. */
  622. remake: function remake(callback) {
  623. this.$emit('change');
  624. this.make(callback);
  625. },
  626. /**
  627. * 生成完成
  628. */
  629. complete: function complete() {
  630. var success = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
  631. var errMsg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
  632. if (success) {
  633. this.$emit('complete', {
  634. success: success
  635. });
  636. } else {
  637. this.$emit('complete', {
  638. success: success,
  639. errMsg: errMsg
  640. });
  641. }
  642. },
  643. /**
  644. * 导出临时路径
  645. */
  646. toTempFilePath: function toTempFilePath() {
  647. var _this4 = this;
  648. var callback = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  649. if (typeof callback.success != 'function') {
  650. callback.success = function () {};
  651. }
  652. if (typeof callback.fail != 'function') {
  653. callback.fail = function () {};
  654. }
  655. if (typeof callback.complete != 'function') {
  656. callback.complete = function () {};
  657. }
  658. if (!this.makeExecuted) {
  659. console.error('[uQRCode]: make() 方法从未调用!请先成功调用 make() 后再进行操作。');
  660. var err = {
  661. errMsg: '[uQRCode]: make() method has never been executed! please execute make() successfully before operating.'
  662. };
  663. callback.fail(err);
  664. callback.complete(err);
  665. return;
  666. }
  667. if (this.isError) {
  668. callback.fail(this.error);
  669. callback.complete(this.error);
  670. return;
  671. }
  672. if (this.makeing) {
  673. /* 如果还在生成状态,那当前操作将托管到委托,监听生成完成后再通过委托复调当前方法 */
  674. this.toTempFilePathDelegate = function () {
  675. _this4.toTempFilePath(callback);
  676. };
  677. return;
  678. } else {
  679. this.toTempFilePathDelegate = null;
  680. }
  681. if (this.canvasType === '2d') {
  682. try {
  683. var dataURL = null;
  684. dataURL = this.canvas.toDataURL();
  685. callback.success({
  686. tempFilePath: dataURL
  687. });
  688. callback.complete({
  689. tempFilePath: dataURL
  690. });
  691. } catch (e) {
  692. callback.fail(e);
  693. callback.complete(e);
  694. }
  695. } else {
  696. uni.canvasToTempFilePath({
  697. canvasId: this.canvasId,
  698. fileType: this.fileType,
  699. width: Number(this.templateOptions.canvasWidth),
  700. height: Number(this.templateOptions.canvasHeight),
  701. destWidth: Number(this.templateOptions.size),
  702. destHeight: Number(this.templateOptions.size),
  703. success: function success(res) {
  704. callback.success(res);
  705. },
  706. fail: function fail(err) {
  707. callback.fail(err);
  708. },
  709. complete: function complete() {
  710. callback.complete();
  711. }
  712. }, this);
  713. }
  714. },
  715. /**
  716. * 保存
  717. */
  718. save: function save() {
  719. var _this5 = this;
  720. var callback = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  721. if (typeof callback.success != 'function') {
  722. callback.success = function () {};
  723. }
  724. if (typeof callback.fail != 'function') {
  725. callback.fail = function () {};
  726. }
  727. if (typeof callback.complete != 'function') {
  728. callback.complete = function () {};
  729. }
  730. this.toTempFilePath({
  731. success: function success(res) {
  732. if (_this5.canvasType === '2d') {
  733. /* 需要将 data:image/png;base64, 这段去除 writeFile 才能正常打开文件,否则是损坏文件,无法打开 */
  734. var reg = new RegExp('^data:image/png;base64,', 'g');
  735. var dataURL = res.tempFilePath.replace(reg, '');
  736. var fs = wx.getFileSystemManager();
  737. var tempFilePath = "".concat(wx.env.USER_DATA_PATH, "/").concat(new Date().getTime()).concat(Math.random().toString().split('.')[1], ".png");
  738. fs.writeFile({
  739. filePath: tempFilePath,
  740. // 要写入的文件路径 (本地路径)
  741. data: dataURL,
  742. // base64图片
  743. encoding: 'base64',
  744. success: function success(res1) {
  745. uni.saveImageToPhotosAlbum({
  746. filePath: tempFilePath,
  747. success: function success(res2) {
  748. callback.success(res2);
  749. },
  750. fail: function fail(err2) {
  751. callback.fail(err2);
  752. },
  753. complete: function complete() {
  754. callback.complete();
  755. }
  756. });
  757. },
  758. fail: function fail(err) {
  759. callback.fail(err);
  760. },
  761. complete: function complete() {
  762. callback.complete();
  763. }
  764. });
  765. } else {
  766. uni.saveImageToPhotosAlbum({
  767. filePath: res.tempFilePath,
  768. success: function success(res1) {
  769. callback.success(res1);
  770. },
  771. fail: function fail(err1) {
  772. callback.fail(err1);
  773. },
  774. complete: function complete() {
  775. callback.complete();
  776. }
  777. });
  778. }
  779. },
  780. fail: function fail(err) {
  781. callback.fail(err);
  782. callback.complete(err);
  783. }
  784. });
  785. },
  786. /**
  787. * 注册click事件
  788. */
  789. onClick: function onClick(e) {
  790. this.$emit('click', e);
  791. },
  792. /**
  793. * 获取实例
  794. */
  795. getInstance: function getInstance() {
  796. return instance;
  797. },
  798. /**
  799. * 注册扩展,组件仅支持注册type为style的drawCanvas扩展
  800. * @param {Object} plugin
  801. */
  802. registerStyle: function registerStyle(plugin) {
  803. if (plugin.Type != 'style') {
  804. console.warn('[uQRCode]: registerStyle 仅支持注册 style 类型的扩展!');
  805. return {
  806. errMsg: 'registerStyle 仅支持注册 style 类型的扩展!'
  807. };
  808. }
  809. if (typeof plugin === 'function') {
  810. this.plugins.push({
  811. plugin: plugin,
  812. name: plugin.Name,
  813. drawCanvas: plugin.DrawCanvas
  814. });
  815. }
  816. },
  817. getLoadImage: function getLoadImage(loadImage) {
  818. var that = this;
  819. if (typeof loadImage == 'function') {
  820. return function (src) {
  821. /* 判断是否是队列加载图片的 */
  822. if (that.isQueueLoadImage) {
  823. /* 解决iOS APP||NVUE同时绘制多个二维码导致图片丢失需使用队列 */
  824. return _queue.queueLoadImage.exec(function () {
  825. return new Promise(function (resolve, reject) {
  826. setTimeout(function () {
  827. var cache = _cache.cacheImageList.find(function (x) {
  828. return x.src == src;
  829. });
  830. if (cache) {
  831. resolve(cache.img);
  832. } else {
  833. loadImage(src).then(function (img) {
  834. _cache.cacheImageList.push({
  835. src: src,
  836. img: img
  837. });
  838. resolve(img);
  839. }).catch(function (err) {
  840. reject(err);
  841. });
  842. }
  843. }, 10);
  844. });
  845. });
  846. } else {
  847. return loadImage(src);
  848. }
  849. };
  850. } else {
  851. return function (src) {
  852. return Promise.resolve(src);
  853. };
  854. }
  855. }
  856. }
  857. };
  858. /**
  859. * 对象属性深度替换
  860. * @param {Object} o 原始对象/默认对象/被替换的对象
  861. * @param {Object} r 从这个对象里取值替换到o对象里
  862. * @return {Object} 替换后的新对象
  863. */
  864. exports.default = _default2;
  865. function deepReplace() {
  866. var o = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  867. var r = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  868. var c = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
  869. var obj;
  870. if (c) {
  871. // 从源替换
  872. obj = o;
  873. } else {
  874. // 不替换源,copy一份备份来替换
  875. obj = _objectSpread({}, o);
  876. }
  877. for (var k in r) {
  878. var vr = r[k];
  879. if (vr != undefined) {
  880. if (vr.constructor == Object) {
  881. obj[k] = this.deepReplace(obj[k], vr);
  882. } else if (vr.constructor == String && !vr) {
  883. obj[k] = obj[k];
  884. } else {
  885. obj[k] = vr;
  886. }
  887. }
  888. }
  889. return obj;
  890. }
  891. /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/index.js */ 2)["default"], __webpack_require__(/*! ./node_modules/@dcloudio/uni-mp-weixin/dist/wx.js */ 1)["default"]))
  892. /***/ }),
  893. /***/ 901:
  894. /*!******************************************************************************************************************************************************!*\
  895. !*** F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=style&index=0&id=b7042062&scoped=true&lang=css& ***!
  896. \******************************************************************************************************************************************************/
  897. /*! no static exports found */
  898. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  899. "use strict";
  900. __webpack_require__.r(__webpack_exports__);
  901. /* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-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--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uqrcode.vue?vue&type=style&index=0&id=b7042062&scoped=true&lang=css& */ 902);
  902. /* harmony import */ var _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  903. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  904. /* harmony default export */ __webpack_exports__["default"] = (_D_HBuilderX_plugins_uniapp_cli_node_modules_mini_css_extract_plugin_dist_loader_js_ref_6_oneOf_1_0_D_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_6_oneOf_1_1_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_6_oneOf_1_2_D_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_6_oneOf_1_3_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_D_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uqrcode_vue_vue_type_style_index_0_id_b7042062_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
  905. /***/ }),
  906. /***/ 902:
  907. /*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  908. !*** ./node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--6-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--6-oneOf-1-2!./node_modules/postcss-loader/src??ref--6-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!F:/项目/HBuilderProjects/test/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.vue?vue&type=style&index=0&id=b7042062&scoped=true&lang=css& ***!
  909. \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  910. /*! no static exports found */
  911. /***/ (function(module, exports, __webpack_require__) {
  912. // extracted by mini-css-extract-plugin
  913. if(false) { var cssReload; }
  914. /***/ })
  915. }]);
  916. //# sourceMappingURL=../../../../../.sourcemap/mp-weixin/uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode.js.map
  917. ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
  918. 'uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode-create-component',
  919. {
  920. 'uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode-create-component':(function(module, exports, __webpack_require__){
  921. __webpack_require__('2')['createComponent'](__webpack_require__(893))
  922. })
  923. },
  924. [['uni_modules/Sansnn-uQRCode/components/uqrcode/uqrcode-create-component']]
  925. ]);