otherAccount.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <template>
  2. <ul class="sign-list">
  3. <li @click="handleEos('eos')" v-if="showLoginTypes.eos">
  4. <i class="icon icon-eos"></i>
  5. <p>EOS</p>
  6. </li>
  7. <li @click="handleEos('meetone')" v-if="showLoginTypes.meetone">
  8. <i class="icon icon-meetone"></i>
  9. <p>Meetone</p>
  10. </li>
  11. <li @click="loginEth" v-if="showLoginTypes.eth">
  12. <i class="icon icon-eth"></i>
  13. <p>ETH</p>
  14. </li>
  15. <li @click="loginTron" v-if="showLoginTypes.tron">
  16. <i class="icon icon-tron"></i>
  17. <p>TRON</p>
  18. </li>
  19. <li @click="loginTelegram" v-if="!inWallet && showLoginTypes.telegram">
  20. <i class="icon icon-tele"></i>
  21. <p>Telegram</p>
  22. </li>
  23. </ul>
  24. </template>
  25. <script>
  26. import Vue from 'vue'
  27. import { Button } from 'element-ui'
  28. import { accountLoginMixin } from '@/mixins/login'
  29. import { getMeechatType } from '@/util/util'
  30. Vue.component(Button.name, Button)
  31. export default {
  32. name: 'loginBox',
  33. mixins: [accountLoginMixin],
  34. data () {
  35. return {
  36. meechatType: getMeechatType()
  37. }
  38. },
  39. created () {
  40. },
  41. computed: {
  42. inWallet () {
  43. return /token|meet\.one|wallet|bit|eos|nova/.test(navigator.userAgent.toLowerCase())
  44. }
  45. },
  46. methods: {
  47. handleEos (type) {
  48. if (top === self) {
  49. this.loginEosMeetoneCommon(type)
  50. } else {
  51. this.loginEosMeetoneParent(type)
  52. }
  53. }
  54. }
  55. }
  56. </script>
  57. <style lang="scss" scoped>
  58. .f-row{
  59. width: 212px;
  60. padding-left: 85px;
  61. border-bottom: 1px solid rgba(#000,0.1);
  62. margin: 20px auto 0;
  63. input{
  64. width: 212px;
  65. height: 54px;
  66. line-height: 54px;
  67. border: 0;
  68. font-size: 14px;
  69. outline: none;
  70. background: transparent;
  71. }
  72. }
  73. .sign-list{
  74. display: flex;
  75. // width: 400px;
  76. width: 320px;
  77. margin: 0 auto;
  78. justify-content: space-around;
  79. li{
  80. width: 80px;
  81. text-align: center;
  82. margin: 0 10px;
  83. cursor: pointer;
  84. &:hover{
  85. opacity: 0.8;
  86. }
  87. }
  88. p{
  89. color: #333333;
  90. font-size: 12px;
  91. margin-top: 16px;
  92. }
  93. .icon{
  94. display: inline-block;
  95. width: 45px;
  96. height: 45px;
  97. border-radius: 50%;
  98. }
  99. .icon-eth{
  100. background: url(./img/icon-eth.png) center/60% #ffffff no-repeat;
  101. }
  102. .icon-eos{
  103. background: url(./img/icon-eos.png) center/60% #ffffff no-repeat;
  104. }
  105. .icon-meetone{
  106. background: url(./img/icon-meetone.png) center/100% #ffffff no-repeat;
  107. }
  108. .icon-tron{
  109. background: url(./img/icon-tron.png) center/60% #ffffff no-repeat;
  110. }
  111. .icon-tele{
  112. background: url(./img/icon-tele.png) center/100% #ffffff no-repeat;
  113. }
  114. }
  115. .mini-wrap{
  116. .sign-list{
  117. width: auto;
  118. margin-top: 30px;
  119. // justify-content: space-between;
  120. // width: 260px;
  121. li{
  122. width: auto;
  123. margin: 0 10px 0 0;
  124. }
  125. .icon{
  126. width: 35px;
  127. height: 35px;
  128. background-color: #f5f5f5;
  129. }
  130. // p{
  131. // display: none;
  132. // }
  133. }
  134. }
  135. .h5-wrap{
  136. .sign-list{
  137. width: auto;
  138. p{
  139. color: #fff;
  140. }
  141. }
  142. .icon{
  143. width: px2rem(110);
  144. height: px2rem(110);
  145. background-color: #f5f5f5;
  146. }
  147. }
  148. </style>