uni-transition.js 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420
  1. (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["uni_modules/uni-transition/components/uni-transition/uni-transition"],{
  2. /***/ 162:
  3. /*!****************************************************************************************************************************************!*\
  4. !*** E:/work/Project_newGit/西电项目/motor-score/motor-scores-app/uni_modules/uni-transition/components/uni-transition/uni-transition.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 _uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./uni-transition.vue?vue&type=template&id=6369f8c4& */ 163);
  11. /* harmony import */ var _uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./uni-transition.vue?vue&type=script&lang=js& */ 165);
  12. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _uni_transition_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 _uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  13. /* harmony import */ var _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 32);
  14. var renderjs
  15. /* normalize component */
  16. var component = Object(_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
  17. _uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
  18. _uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["render"],
  19. _uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
  20. false,
  21. null,
  22. null,
  23. null,
  24. false,
  25. _uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["components"],
  26. renderjs
  27. )
  28. component.options.__file = "uni_modules/uni-transition/components/uni-transition/uni-transition.vue"
  29. /* harmony default export */ __webpack_exports__["default"] = (component.exports);
  30. /***/ }),
  31. /***/ 163:
  32. /*!***********************************************************************************************************************************************************************!*\
  33. !*** E:/work/Project_newGit/西电项目/motor-score/motor-scores-app/uni_modules/uni-transition/components/uni-transition/uni-transition.vue?vue&type=template&id=6369f8c4& ***!
  34. \***********************************************************************************************************************************************************************/
  35. /*! exports provided: render, staticRenderFns, recyclableRender, components */
  36. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  37. "use strict";
  38. __webpack_require__.r(__webpack_exports__);
  39. /* harmony import */ var _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uni-transition.vue?vue&type=template&id=6369f8c4& */ 164);
  40. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["render"]; });
  41. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
  42. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
  43. /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_template_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_template_id_6369f8c4___WEBPACK_IMPORTED_MODULE_0__["components"]; });
  44. /***/ }),
  45. /***/ 164:
  46. /*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  47. !*** ./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!E:/work/Project_newGit/西电项目/motor-score/motor-scores-app/uni_modules/uni-transition/components/uni-transition/uni-transition.vue?vue&type=template&id=6369f8c4& ***!
  48. \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  49. /*! exports provided: render, staticRenderFns, recyclableRender, components */
  50. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  51. "use strict";
  52. __webpack_require__.r(__webpack_exports__);
  53. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
  54. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
  55. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
  56. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
  57. var components
  58. var render = function () {
  59. var _vm = this
  60. var _h = _vm.$createElement
  61. var _c = _vm._self._c || _h
  62. }
  63. var recyclableRender = false
  64. var staticRenderFns = []
  65. render._withStripped = true
  66. /***/ }),
  67. /***/ 165:
  68. /*!*****************************************************************************************************************************************************************!*\
  69. !*** E:/work/Project_newGit/西电项目/motor-score/motor-scores-app/uni_modules/uni-transition/components/uni-transition/uni-transition.vue?vue&type=script&lang=js& ***!
  70. \*****************************************************************************************************************************************************************/
  71. /*! no static exports found */
  72. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  73. "use strict";
  74. __webpack_require__.r(__webpack_exports__);
  75. /* harmony import */ var _software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../../software/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./uni-transition.vue?vue&type=script&lang=js& */ 166);
  76. /* harmony import */ var _software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
  77. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_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 _software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  78. /* harmony default export */ __webpack_exports__["default"] = (_software_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_script_js_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_software_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_webpack_uni_mp_loader_lib_style_js_uni_transition_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
  79. /***/ }),
  80. /***/ 166:
  81. /*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  82. !*** ./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!E:/work/Project_newGit/西电项目/motor-score/motor-scores-app/uni_modules/uni-transition/components/uni-transition/uni-transition.vue?vue&type=script&lang=js& ***!
  83. \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
  84. /*! no static exports found */
  85. /***/ (function(module, exports, __webpack_require__) {
  86. "use strict";
  87. var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ 4);
  88. Object.defineProperty(exports, "__esModule", {
  89. value: true
  90. });
  91. exports.default = void 0;
  92. var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ 18));
  93. var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/typeof */ 13));
  94. var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ 11));
  95. var _createAnimation = __webpack_require__(/*! ./createAnimation */ 167);
  96. 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; }
  97. 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; }
  98. /**
  99. * Transition 过渡动画
  100. * @description 简单过渡动画组件
  101. * @tutorial https://ext.dcloud.net.cn/plugin?id=985
  102. * @property {Boolean} show = [false|true] 控制组件显示或隐藏
  103. * @property {Array|String} modeClass = [fade|slide-top|slide-right|slide-bottom|slide-left|zoom-in|zoom-out] 过渡动画类型
  104. * @value fade 渐隐渐出过渡
  105. * @value slide-top 由上至下过渡
  106. * @value slide-right 由右至左过渡
  107. * @value slide-bottom 由下至上过渡
  108. * @value slide-left 由左至右过渡
  109. * @value zoom-in 由小到大过渡
  110. * @value zoom-out 由大到小过渡
  111. * @property {Number} duration 过渡动画持续时间
  112. * @property {Object} styles 组件样式,同 css 样式,注意带’-‘连接符的属性需要使用小驼峰写法如:`backgroundColor:red`
  113. */
  114. var _default2 = {
  115. name: 'uniTransition',
  116. emits: ['click', 'change'],
  117. props: {
  118. show: {
  119. type: Boolean,
  120. default: false
  121. },
  122. modeClass: {
  123. type: [Array, String],
  124. default: function _default() {
  125. return 'fade';
  126. }
  127. },
  128. duration: {
  129. type: Number,
  130. default: 300
  131. },
  132. styles: {
  133. type: Object,
  134. default: function _default() {
  135. return {};
  136. }
  137. },
  138. customClass: {
  139. type: String,
  140. default: ''
  141. },
  142. onceRender: {
  143. type: Boolean,
  144. default: false
  145. }
  146. },
  147. data: function data() {
  148. return {
  149. isShow: false,
  150. transform: '',
  151. opacity: 1,
  152. animationData: {},
  153. durationTime: 300,
  154. config: {}
  155. };
  156. },
  157. watch: {
  158. show: {
  159. handler: function handler(newVal) {
  160. if (newVal) {
  161. this.open();
  162. } else {
  163. // 避免上来就执行 close,导致动画错乱
  164. if (this.isShow) {
  165. this.close();
  166. }
  167. }
  168. },
  169. immediate: true
  170. }
  171. },
  172. computed: {
  173. // 生成样式数据
  174. stylesObject: function stylesObject() {
  175. var styles = _objectSpread(_objectSpread({}, this.styles), {}, {
  176. 'transition-duration': this.duration / 1000 + 's'
  177. });
  178. var transform = '';
  179. for (var i in styles) {
  180. var line = this.toLine(i);
  181. transform += line + ':' + styles[i] + ';';
  182. }
  183. return transform;
  184. },
  185. // 初始化动画条件
  186. transformStyles: function transformStyles() {
  187. return 'transform:' + this.transform + ';' + 'opacity:' + this.opacity + ';' + this.stylesObject;
  188. }
  189. },
  190. created: function created() {
  191. // 动画默认配置
  192. this.config = {
  193. duration: this.duration,
  194. timingFunction: 'ease',
  195. transformOrigin: '50% 50%',
  196. delay: 0
  197. };
  198. this.durationTime = this.duration;
  199. },
  200. methods: {
  201. /**
  202. * ref 触发 初始化动画
  203. */
  204. init: function init() {
  205. var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  206. if (obj.duration) {
  207. this.durationTime = obj.duration;
  208. }
  209. this.animation = (0, _createAnimation.createAnimation)(Object.assign(this.config, obj), this);
  210. },
  211. /**
  212. * 点击组件触发回调
  213. */
  214. onClick: function onClick() {
  215. this.$emit('click', {
  216. detail: this.isShow
  217. });
  218. },
  219. /**
  220. * ref 触发 动画分组
  221. * @param {Object} obj
  222. */
  223. step: function step(obj) {
  224. var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  225. if (!this.animation) return;
  226. for (var i in obj) {
  227. try {
  228. if ((0, _typeof2.default)(obj[i]) === 'object') {
  229. var _this$animation;
  230. (_this$animation = this.animation)[i].apply(_this$animation, (0, _toConsumableArray2.default)(obj[i]));
  231. } else {
  232. this.animation[i](obj[i]);
  233. }
  234. } catch (e) {
  235. console.error("\u65B9\u6CD5 ".concat(i, " \u4E0D\u5B58\u5728"));
  236. }
  237. }
  238. this.animation.step(config);
  239. return this;
  240. },
  241. /**
  242. * ref 触发 执行动画
  243. */
  244. run: function run(fn) {
  245. if (!this.animation) return;
  246. this.animation.run(fn);
  247. },
  248. // 开始过度动画
  249. open: function open() {
  250. var _this = this;
  251. clearTimeout(this.timer);
  252. this.transform = '';
  253. this.isShow = true;
  254. var _this$styleInit = this.styleInit(false),
  255. opacity = _this$styleInit.opacity,
  256. transform = _this$styleInit.transform;
  257. if (typeof opacity !== 'undefined') {
  258. this.opacity = opacity;
  259. }
  260. this.transform = transform;
  261. // 确保动态样式已经生效后,执行动画,如果不加 nextTick ,会导致 wx 动画执行异常
  262. this.$nextTick(function () {
  263. // TODO 定时器保证动画完全执行,目前有些问题,后面会取消定时器
  264. _this.timer = setTimeout(function () {
  265. _this.animation = (0, _createAnimation.createAnimation)(_this.config, _this);
  266. _this.tranfromInit(false).step();
  267. _this.animation.run();
  268. _this.$emit('change', {
  269. detail: _this.isShow
  270. });
  271. }, 20);
  272. });
  273. },
  274. // 关闭过度动画
  275. close: function close(type) {
  276. var _this2 = this;
  277. if (!this.animation) return;
  278. this.tranfromInit(true).step().run(function () {
  279. _this2.isShow = false;
  280. _this2.animationData = null;
  281. _this2.animation = null;
  282. var _this2$styleInit = _this2.styleInit(false),
  283. opacity = _this2$styleInit.opacity,
  284. transform = _this2$styleInit.transform;
  285. _this2.opacity = opacity || 1;
  286. _this2.transform = transform;
  287. _this2.$emit('change', {
  288. detail: _this2.isShow
  289. });
  290. });
  291. },
  292. // 处理动画开始前的默认样式
  293. styleInit: function styleInit(type) {
  294. var _this3 = this;
  295. var styles = {
  296. transform: ''
  297. };
  298. var buildStyle = function buildStyle(type, mode) {
  299. if (mode === 'fade') {
  300. styles.opacity = _this3.animationType(type)[mode];
  301. } else {
  302. styles.transform += _this3.animationType(type)[mode] + ' ';
  303. }
  304. };
  305. if (typeof this.modeClass === 'string') {
  306. buildStyle(type, this.modeClass);
  307. } else {
  308. this.modeClass.forEach(function (mode) {
  309. buildStyle(type, mode);
  310. });
  311. }
  312. return styles;
  313. },
  314. // 处理内置组合动画
  315. tranfromInit: function tranfromInit(type) {
  316. var _this4 = this;
  317. var buildTranfrom = function buildTranfrom(type, mode) {
  318. var aniNum = null;
  319. if (mode === 'fade') {
  320. aniNum = type ? 0 : 1;
  321. } else {
  322. aniNum = type ? '-100%' : '0';
  323. if (mode === 'zoom-in') {
  324. aniNum = type ? 0.8 : 1;
  325. }
  326. if (mode === 'zoom-out') {
  327. aniNum = type ? 1.2 : 1;
  328. }
  329. if (mode === 'slide-right') {
  330. aniNum = type ? '100%' : '0';
  331. }
  332. if (mode === 'slide-bottom') {
  333. aniNum = type ? '100%' : '0';
  334. }
  335. }
  336. _this4.animation[_this4.animationMode()[mode]](aniNum);
  337. };
  338. if (typeof this.modeClass === 'string') {
  339. buildTranfrom(type, this.modeClass);
  340. } else {
  341. this.modeClass.forEach(function (mode) {
  342. buildTranfrom(type, mode);
  343. });
  344. }
  345. return this.animation;
  346. },
  347. animationType: function animationType(type) {
  348. return {
  349. fade: type ? 1 : 0,
  350. 'slide-top': "translateY(".concat(type ? '0' : '-100%', ")"),
  351. 'slide-right': "translateX(".concat(type ? '0' : '100%', ")"),
  352. 'slide-bottom': "translateY(".concat(type ? '0' : '100%', ")"),
  353. 'slide-left': "translateX(".concat(type ? '0' : '-100%', ")"),
  354. 'zoom-in': "scaleX(".concat(type ? 1 : 0.8, ") scaleY(").concat(type ? 1 : 0.8, ")"),
  355. 'zoom-out': "scaleX(".concat(type ? 1 : 1.2, ") scaleY(").concat(type ? 1 : 1.2, ")")
  356. };
  357. },
  358. // 内置动画类型与实际动画对应字典
  359. animationMode: function animationMode() {
  360. return {
  361. fade: 'opacity',
  362. 'slide-top': 'translateY',
  363. 'slide-right': 'translateX',
  364. 'slide-bottom': 'translateY',
  365. 'slide-left': 'translateX',
  366. 'zoom-in': 'scale',
  367. 'zoom-out': 'scale'
  368. };
  369. },
  370. // 驼峰转中横线
  371. toLine: function toLine(name) {
  372. return name.replace(/([A-Z])/g, '-$1').toLowerCase();
  373. }
  374. }
  375. };
  376. exports.default = _default2;
  377. /***/ })
  378. }]);
  379. //# sourceMappingURL=../../../../../.sourcemap/mp-weixin/uni_modules/uni-transition/components/uni-transition/uni-transition.js.map
  380. ;(global["webpackJsonp"] = global["webpackJsonp"] || []).push([
  381. 'uni_modules/uni-transition/components/uni-transition/uni-transition-create-component',
  382. {
  383. 'uni_modules/uni-transition/components/uni-transition/uni-transition-create-component':(function(module, exports, __webpack_require__){
  384. __webpack_require__('2')['createComponent'](__webpack_require__(162))
  385. })
  386. },
  387. [['uni_modules/uni-transition/components/uni-transition/uni-transition-create-component']]
  388. ]);