navigation-bar.js 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. module.exports =
  2. /** *** */ (function (modules) { // webpackBootstrap
  3. /** *** */ // The module cache
  4. /** *** */ const installedModules = {}
  5. /** *** */
  6. /** *** */ // The require function
  7. /** *** */ function __webpack_require__(moduleId) {
  8. /** *** */
  9. /** *** */ // Check if module is in cache
  10. /** *** */ if (installedModules[moduleId]) {
  11. /** *** */ return installedModules[moduleId].exports
  12. /** *** */ }
  13. /** *** */ // Create a new module (and put it into the cache)
  14. /** *** */ const module = installedModules[moduleId] = {
  15. /** *** */ i: moduleId,
  16. /** *** */ l: false,
  17. /** *** */ exports: {}
  18. /** *** */}
  19. /** *** */
  20. /** *** */ // Execute the module function
  21. /** *** */ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__)
  22. /** *** */
  23. /** *** */ // Flag the module as loaded
  24. /** *** */ module.l = true
  25. /** *** */
  26. /** *** */ // Return the exports of the module
  27. /** *** */ return module.exports
  28. /** *** */ }
  29. /** *** */
  30. /** *** */
  31. /** *** */ // expose the modules object (__webpack_modules__)
  32. /** *** */ __webpack_require__.m = modules
  33. /** *** */
  34. /** *** */ // expose the module cache
  35. /** *** */ __webpack_require__.c = installedModules
  36. /** *** */
  37. /** *** */ // define getter function for harmony exports
  38. /** *** */ __webpack_require__.d = function (exports, name, getter) {
  39. /** *** */ if (!__webpack_require__.o(exports, name)) {
  40. /** *** */ Object.defineProperty(exports, name, {enumerable: true, get: getter})
  41. /** *** */ }
  42. /** *** */ }
  43. /** *** */
  44. /** *** */ // define __esModule on exports
  45. /** *** */ __webpack_require__.r = function (exports) {
  46. /** *** */ if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {
  47. /** *** */ Object.defineProperty(exports, Symbol.toStringTag, {value: 'Module'})
  48. /** *** */ }
  49. /** *** */ Object.defineProperty(exports, '__esModule', {value: true})
  50. /** *** */ }
  51. /** *** */
  52. /** *** */ // create a fake namespace object
  53. /** *** */ // mode & 1: value is a module id, require it
  54. /** *** */ // mode & 2: merge all properties of value into the ns
  55. /** *** */ // mode & 4: return value when already ns object
  56. /** *** */ // mode & 8|1: behave like require
  57. /** *** */ __webpack_require__.t = function (value, mode) {
  58. /** *** */ if (mode & 1) value = __webpack_require__(value)
  59. /** *** */ if (mode & 8) return value
  60. /** *** */ if ((mode & 4) && typeof value === 'object' && value && value.__esModule) return value
  61. /** *** */ const ns = Object.create(null)
  62. /** *** */ __webpack_require__.r(ns)
  63. /** *** */ Object.defineProperty(ns, 'default', {enumerable: true, value})
  64. /** *** */ if (mode & 2 && typeof value !== 'string') for (const key in value) __webpack_require__.d(ns, key, function (key) { return value[key] }.bind(null, key))
  65. /** *** */ return ns
  66. /** *** */ }
  67. /** *** */
  68. /** *** */ // getDefaultExport function for compatibility with non-harmony modules
  69. /** *** */ __webpack_require__.n = function (module) {
  70. /** *** */ const getter = module && module.__esModule
  71. /** *** */ ? function getDefault() { return module.default }
  72. /** *** */ : function getModuleExports() { return module }
  73. /** *** */ __webpack_require__.d(getter, 'a', getter)
  74. /** *** */ return getter
  75. /** *** */ }
  76. /** *** */
  77. /** *** */ // Object.prototype.hasOwnProperty.call
  78. /** *** */ __webpack_require__.o = function (object, property) { return Object.prototype.hasOwnProperty.call(object, property) }
  79. /** *** */
  80. /** *** */ // __webpack_public_path__
  81. /** *** */ __webpack_require__.p = ''
  82. /** *** */
  83. /** *** */
  84. /** *** */ // Load entry module and return exports
  85. /** *** */ return __webpack_require__(__webpack_require__.s = 3)
  86. /** *** */ }({
  87. /***/ 3:
  88. /***/ (function (module, exports, __webpack_require__) {
  89. Component({
  90. options: {
  91. multipleSlots: true,
  92. addGlobalClass: true
  93. },
  94. properties: {
  95. extClass: {
  96. type: String,
  97. value: ''
  98. },
  99. title: {
  100. type: String,
  101. value: ''
  102. },
  103. background: {
  104. type: String,
  105. value: ''
  106. },
  107. color: {
  108. type: String,
  109. value: ''
  110. },
  111. back: {
  112. type: Boolean,
  113. value: true
  114. },
  115. loading: {
  116. type: Boolean,
  117. value: false
  118. },
  119. // 显示隐藏的时候opacity动画效果
  120. animated: {
  121. type: Boolean,
  122. value: true
  123. },
  124. // 显示隐藏导航,隐藏的时候navigation-bar的高度占位还在
  125. show: {
  126. type: Boolean,
  127. value: true,
  128. observer: '_showChange'
  129. },
  130. delta: {
  131. type: Number,
  132. value: 1
  133. }
  134. },
  135. data: {
  136. displayStyle: ''
  137. },
  138. attached() {
  139. const isSupport = !!wx.getMenuButtonBoundingClientRect
  140. const rect = wx.getMenuButtonBoundingClientRect ? wx.getMenuButtonBoundingClientRect() : null
  141. wx.getSystemInfo({
  142. success: res => {
  143. const ios = !!(res.system.toLowerCase().search('ios') + 1)
  144. this.setData({
  145. ios,
  146. statusBarHeight: res.statusBarHeight,
  147. innerWidth: isSupport ? `width:${rect.left}px` : '',
  148. innerPaddingRight: isSupport ? `padding-right:${res.windowWidth - rect.left}px` : '',
  149. leftWidth: isSupport ? `width:${res.windowWidth - rect.left}px` : ''
  150. })
  151. }
  152. })
  153. },
  154. methods: {
  155. _showChange(show) {
  156. const animated = this.data.animated
  157. let displayStyle = ''
  158. if (animated) {
  159. displayStyle = `opacity: ${show ? '1' : '0'};-webkit-transition:opacity 0.5s;transition:opacity 0.5s;`
  160. } else {
  161. displayStyle = `display: ${show ? '' : 'none'}`
  162. }
  163. this.setData({
  164. displayStyle
  165. })
  166. },
  167. back() {
  168. const data = this.data
  169. if (data.delta) {
  170. wx.navigateBack({
  171. delta: data.delta
  172. })
  173. }
  174. this.triggerEvent('back', {
  175. delta: data.delta
  176. }, {})
  177. }
  178. }
  179. })
  180. /***/ })
  181. /** *** */}))