index.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <template>
  2. <demo-section>
  3. <demo-block :title="$t('type')">
  4. <div class="demo-button-row">
  5. <van-button type="default">{{ $t('default') }}</van-button>
  6. <van-button type="primary">{{ $t('primary') }}</van-button>
  7. <van-button type="info">{{ $t('info') }}</van-button>
  8. </div>
  9. <van-button type="danger">{{ $t('danger') }}</van-button>
  10. <van-button type="warning">{{ $t('warning') }}</van-button>
  11. </demo-block>
  12. <demo-block :title="$t('plain')">
  13. <van-button
  14. plain
  15. type="primary"
  16. :text="$t('plain')"
  17. />
  18. <van-button
  19. plain
  20. type="danger"
  21. :text="$t('plain')"
  22. />
  23. </demo-block>
  24. <demo-block :title="$t('hairline')">
  25. <van-button
  26. plain
  27. hairline
  28. type="primary"
  29. :text="$t('hairlineButton')"
  30. />
  31. <van-button
  32. plain
  33. hairline
  34. type="danger"
  35. :text="$t('hairlineButton')"
  36. />
  37. </demo-block>
  38. <demo-block :title="$t('disabled')">
  39. <van-button
  40. disabled
  41. type="primary"
  42. :text="$t('disabled')"
  43. />
  44. <van-button
  45. disabled
  46. type="danger"
  47. :text="$t('disabled')"
  48. />
  49. </demo-block>
  50. <demo-block :title="$t('loadingStatus')">
  51. <van-button
  52. loading
  53. type="primary"
  54. />
  55. <van-button
  56. loading
  57. :loading-text="$t('loadingText')"
  58. type="danger"
  59. />
  60. </demo-block>
  61. <demo-block :title="$t('shape')">
  62. <van-button
  63. type="primary"
  64. square
  65. :text="$t('square')"
  66. />
  67. <van-button
  68. type="danger"
  69. round
  70. :text="$t('round')"
  71. />
  72. </demo-block>
  73. <demo-block :title="$t('size')">
  74. <van-button size="large">{{ $t('large') }}</van-button>
  75. <van-button size="normal">{{ $t('normal') }}</van-button>
  76. <van-button size="small">{{ $t('small') }}</van-button>
  77. <van-button size="mini">{{ $t('mini') }}</van-button>
  78. </demo-block>
  79. </demo-section>
  80. </template>
  81. <script>
  82. export default {
  83. i18n: {
  84. 'zh-CN': {
  85. type: '按钮类型',
  86. size: '按钮尺寸',
  87. loading: '加载状态',
  88. shape: '按钮形状',
  89. default: '默认按钮',
  90. primary: '主要按钮',
  91. info: '信息按钮',
  92. danger: '危险按钮',
  93. warning: '警告按钮',
  94. large: '大号按钮',
  95. normal: '普通按钮',
  96. small: '小型按钮',
  97. mini: '迷你按钮',
  98. plain: '朴素按钮',
  99. square: '方形按钮',
  100. round: '圆形按钮',
  101. hairline: '细边框',
  102. hairlineButton: '细边框按钮',
  103. loadingText: '加载中...'
  104. },
  105. 'en-US': {
  106. type: 'Type',
  107. size: 'Size',
  108. loading: 'Loading',
  109. shape: 'Shape',
  110. default: 'Default',
  111. primary: 'Primary',
  112. info: 'Info',
  113. danger: 'Danger',
  114. warning: 'Warning',
  115. large: 'Large',
  116. normal: 'Normal',
  117. small: 'Small',
  118. mini: 'Mini',
  119. plain: 'Plain',
  120. square: 'Square',
  121. round: 'Round',
  122. hairline: 'Hairline',
  123. hairlineButton: 'Hairline',
  124. loadingText: 'Loading...'
  125. }
  126. }
  127. };
  128. </script>
  129. <style lang="less">
  130. .demo-button {
  131. .van-button {
  132. user-select: none;
  133. &--large {
  134. margin-bottom: 15px;
  135. }
  136. &--small,
  137. &--normal:not(:last-child) {
  138. margin-right: 10px;
  139. }
  140. }
  141. .van-doc-demo-block {
  142. padding: 0 15px;
  143. }
  144. .van-doc-demo-block__title {
  145. padding-left: 0;
  146. }
  147. &-row {
  148. margin-bottom: 10px;
  149. }
  150. }
  151. </style>