erweima.vue 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <template>
  2. <view>
  3. <u-navbar title="" autoBack placeholder></u-navbar>
  4. <view class="card_image_erweima">
  5. <view class="card_avatar">
  6. <image class="mine_image" src="../../static/portrait.png" mode=""></image>
  7. <view class="card_user_title">
  8. <view class="mine_phone">{{userInfo.nickName}}</view>
  9. <view class="mine_phone" v-if="userInfo.dept">{{userInfo.dept.name}}</view>
  10. </view>
  11. </view>
  12. <view class="card_erweima_af">
  13. <canvas id="qrcode" canvas-id="qrcode" style="width: 200px;height:200px;" />
  14. </view>
  15. </view>
  16. </view>
  17. </template>
  18. <script>
  19. import UQRCode from "static/js/uqrcode.js";
  20. export default {
  21. data() {
  22. return {
  23. userInfo: {},
  24. }
  25. },
  26. mounted() {
  27. var userInfo = this.$cache.getCache('userInfo')
  28. this.userInfo = userInfo
  29. const qr = new UQRCode();
  30. qr.data = '二维码内容';
  31. qr.size = 200;
  32. qr.make();
  33. const ctx = uni.createCanvasContext('qrcode', this);
  34. qr.canvasContext = ctx;
  35. qr.drawCanvas();
  36. },
  37. methods: {
  38. }
  39. }
  40. </script>
  41. <style lang="scss">
  42. .card_avatar {
  43. display: flex;
  44. align-items: center;
  45. margin-bottom: 60rpx;
  46. }
  47. .card_image_erweima {
  48. margin: 30px;
  49. }
  50. .mine_image {
  51. width: 100rpx;
  52. height: 100rpx;
  53. border-radius: 50%;
  54. }
  55. .card_user_title {
  56. display: flex;
  57. flex-direction: column;
  58. align-items: flex-start;
  59. }
  60. .mine_phone {
  61. margin-left: 20rpx;
  62. font-size: 30rpx;
  63. }
  64. .card_erweima_af {
  65. display: flex;
  66. align-items: center;
  67. justify-content: center;
  68. }
  69. </style>