App.vue 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289
  1. <script>
  2. /**
  3. * vuex管理登陆状态,具体可以参考官方登陆模板示例
  4. */
  5. import { mapMutations } from 'vuex';
  6. // #ifdef H5
  7. import { weixindata } from './utils/wxAuthorized';
  8. // #endif
  9. export default {
  10. data() {
  11. return {};
  12. },
  13. methods: {
  14. ...mapMutations(['login', 'hasLogin', 'setUserInfo', 'shopClick'])
  15. },
  16. onLaunch: function(urlObj) {
  17. let obj = this;
  18. // 加载缓存中的用户信息
  19. let userInfo = uni.getStorageSync('userInfo') || '';
  20. uni.setStorageSync('mystore','');
  21. if( userInfo.store_info && (userInfo.store_switch !== '0')) {
  22. uni.setStorageSync('mystore',userInfo.store_info.id);
  23. const value = uni.getStorageSync('mystore');
  24. // if (value) {
  25. // this.mystore = value
  26. // uni.showModal({
  27. // title:'是否显示网店false',
  28. // content:JSON.stringify(this.mystore)
  29. // })
  30. // }
  31. } else {
  32. uni.setStorageSync('mystore','');
  33. const value = uni.getStorageSync('mystore');
  34. console.log('====2222====',value);
  35. }
  36. // else{
  37. // let store_info = true
  38. // uni.setStorageSync('mystore',store_info);
  39. // const value = uni.getStorageSync('mystore');
  40. // if (value) {
  41. // this.mystore = value
  42. // uni.showModal({
  43. // title:'是否显示网店true',
  44. // content:JSON.stringify(this.mystore)
  45. // })
  46. // }
  47. // }
  48. let token = uni.getStorageSync('token');
  49. // uni.removeStorageSync('spread');
  50. uni.removeStorageSync('store_id');
  51. // uni.showModal({
  52. // title: 'cookie',
  53. // content: getCookie('token')+'&user='+JSON.stringify(userInfo)+'&href='+window.location.href,
  54. // showCancel: false,
  55. // });
  56. function getCookie(cname) {
  57. var name = cname + '=';
  58. var ca = document.cookie.split(';');
  59. for (var i = 0; i < ca.length; i++) {
  60. var c = ca[i].trim();
  61. if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
  62. }
  63. return '';
  64. }
  65. // 判断是否拥有用户信息
  66. if (userInfo.uid) {
  67. // 更新登录信息
  68. obj.login();
  69. //更新登陆状态
  70. uni.getStorage({
  71. key: 'userInfo',
  72. success: res => {
  73. obj.setUserInfo(res.data);
  74. }
  75. });
  76. }
  77. // #ifdef H5
  78. //判断是否已经缓存浏览器
  79. let bool = uni.getStorageSync('weichatBrowser') || '';
  80. if (bool === '') {
  81. //判断是否为微信浏览
  82. bool = navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger';
  83. // 保存当前是否为微信内核浏览器
  84. uni.setStorageSync('weichatBrowser', bool);
  85. }
  86. // 判断是否为微信浏览器
  87. if (bool) {
  88. // 加载微信注册信息
  89. weixindata();
  90. }
  91. // #endif
  92. },
  93. onShow: function() {
  94. // 加载拦截
  95. // console.log('App Show');
  96. },
  97. onHide: function() {
  98. // console.log('App Hide');
  99. }
  100. };
  101. </script>
  102. <style lang="scss">
  103. @import "uview-ui/index.scss";
  104. /*全局公共样式和字体图标*/
  105. @import '/static/css/cmy.css';
  106. view,
  107. scroll-view,
  108. swiper,
  109. swiper-item,
  110. cover-view,
  111. cover-image,
  112. icon,
  113. text,
  114. rich-text,
  115. progress,
  116. button,
  117. checkbox,
  118. form,
  119. input,
  120. label,
  121. radio,
  122. slider,
  123. switch,
  124. textarea,
  125. navigator,
  126. audio,
  127. camera,
  128. image,
  129. video {
  130. box-sizing: border-box;
  131. }
  132. /* 骨架屏替代方案 */
  133. .Skeleton {
  134. background: #f3f3f3;
  135. padding: 20rpx 0;
  136. border-radius: 8rpx;
  137. }
  138. /* 图片载入替代方案 */
  139. .image-wrapper {
  140. font-size: 0;
  141. background: #f3f3f3;
  142. border-radius: 4px;
  143. image {
  144. width: 100%;
  145. height: 100%;
  146. transition: 0.6s;
  147. opacity: 0;
  148. &.loaded {
  149. opacity: 1 !important;
  150. }
  151. }
  152. }
  153. // 设置富文本中图片最大宽度
  154. uni-rich-text img {
  155. max-width: 100% !important;
  156. }
  157. /*边框*/
  158. .b-b:after,
  159. .b-t:after {
  160. position: absolute;
  161. z-index: 3;
  162. left: 0;
  163. right: 0;
  164. height: 0;
  165. content: '';
  166. transform: scaleY(0.5);
  167. border-bottom: 1px solid $border-color-base;
  168. }
  169. .b-b:after {
  170. bottom: 0;
  171. }
  172. .b-t:after {
  173. top: 0;
  174. }
  175. /* button样式改写 */
  176. uni-button,
  177. button {
  178. height: 80rpx;
  179. line-height: 80rpx;
  180. font-size: $font-lg + 2rpx;
  181. font-weight: normal;
  182. &.no-border:before,
  183. &.no-border:after {
  184. border: 0;
  185. }
  186. }
  187. uni-button[type='default'],
  188. button[type='default'] {
  189. color: $font-color-dark;
  190. }
  191. /* input 样式 */
  192. .input-placeholder {
  193. color: #999999;
  194. }
  195. .placeholder {
  196. color: #999999;
  197. }
  198. // 边距样式
  199. @for $i from 0 to 4 {
  200. .margin-l-#{$i * 10} {
  201. margin-left: $i * 10rpx !important;
  202. }
  203. .margin-r-#{$i * 10} {
  204. margin-right: $i * 10rpx !important;
  205. }
  206. .margin-t-#{$i * 10} {
  207. margin-top: $i * 10rpx !important;
  208. }
  209. .margin-b-#{$i * 10} {
  210. margin-bottom: $i * 10rpx !important;
  211. }
  212. .margin-#{$i * 10} {
  213. margin: $i * 10rpx !important;
  214. }
  215. .margin-v-#{$i * 10} {
  216. margin-top: $i * 10rpx !important;
  217. margin-bottom: $i * 10rpx !important;
  218. }
  219. .margin-c-#{$i * 10} {
  220. margin-left: $i * 10rpx !important;
  221. margin-right: $i * 10rpx !important;
  222. }
  223. .padding-l-#{$i * 10} {
  224. padding-left: $i * 10rpx !important;
  225. }
  226. .padding-r-#{$i * 10} {
  227. padding-right: $i * 10rpx !important;
  228. }
  229. .padding-t-#{$i * 10} {
  230. padding-top: $i * 10rpx !important;
  231. }
  232. .padding-b-#{$i * 10} {
  233. padding-bottom: $i * 10rpx !important;
  234. }
  235. .padding-#{$i * 10} {
  236. padding: $i * 10rpx !important;
  237. }
  238. .padding-v-#{$i * 10} {
  239. padding-top: $i * 10rpx !important;
  240. padding-bottom: $i * 10rpx !important;
  241. }
  242. .padding-c-#{$i * 10} {
  243. padding-left: $i * 10rpx !important;
  244. padding-right: $i * 10rpx !important;
  245. }
  246. }
  247. // 字体大小
  248. .font-size-sm {
  249. font-size: $font-sm;
  250. }
  251. .font-size-base {
  252. font-size: $font-base;
  253. }
  254. .font-size-lg {
  255. font-size: $font-lg;
  256. }
  257. // 字体颜色
  258. .font-color-yellow {
  259. color: $color-yellow;
  260. }
  261. .font-color-gray {
  262. color: $color-gray;
  263. }
  264. .font-color-red {
  265. color: $color-red;
  266. }
  267. // 边框颜色
  268. .border-color-yellow {
  269. border: 1rpx solid $color-yellow;
  270. }
  271. // 修改默认背景颜色
  272. uni-page-wrapper,
  273. page {
  274. background-color: $page-color-base;
  275. }
  276. </style>