badge.uvue 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <cl-page>
  3. <view class="p-3">
  4. <demo-item :label="t('基础用法')">
  5. <view class="flex flex-row overflow-visible">
  6. <cl-badge type="primary" value="1" class="mr-2"></cl-badge>
  7. <cl-badge type="success" value="12" class="mr-2"></cl-badge>
  8. <cl-badge type="warn" value="31" class="mr-2"></cl-badge>
  9. <cl-badge type="error" value="24" class="mr-2"></cl-badge>
  10. <cl-badge type="info" value="17" class="mr-2"></cl-badge>
  11. <cl-badge type="primary" value="41" class="mr-2"></cl-badge>
  12. <cl-badge type="success" value="56" class="mr-2"></cl-badge>
  13. </view>
  14. </demo-item>
  15. <demo-item :label="t('结合按钮')">
  16. <view class="flex flex-row overflow-visible">
  17. <cl-button>
  18. {{ t("购买") }}
  19. <template #content>
  20. <cl-badge type="error" value="1" position> </cl-badge>
  21. </template>
  22. </cl-button>
  23. <cl-button :pt="{ className: '!ml-5' }">
  24. {{ t("消息") }}
  25. <template #content>
  26. <cl-badge type="error" dot position> </cl-badge>
  27. </template>
  28. </cl-button>
  29. </view>
  30. </demo-item>
  31. <demo-item :label="t('结合图片')">
  32. <view class="flex flex-row overflow-visible">
  33. <cl-image
  34. :pt="{
  35. className: 'overflow-visible'
  36. }"
  37. src="https://unix.cool-js.com/images/demo/bg1.png"
  38. >
  39. <cl-badge type="error" value="+9" position> </cl-badge>
  40. </cl-image>
  41. </view>
  42. </demo-item>
  43. <demo-item :label="t('结合图标')">
  44. <view class="flex flex-row overflow-visible">
  45. <view class="relative overflow-visible">
  46. <cl-icon name="mail-line"> </cl-icon>
  47. <cl-badge
  48. type="error"
  49. dot
  50. position
  51. :pt="{
  52. className: '!top-[-6rpx] !right-[-6rpx]'
  53. }"
  54. >
  55. </cl-badge>
  56. </view>
  57. </view>
  58. </demo-item>
  59. <demo-item :label="t('自定义样式')">
  60. <view class="flex flex-row overflow-visible">
  61. <cl-badge
  62. type="info"
  63. :pt="{ className: '!rounded-bl-none' }"
  64. value="1"
  65. ></cl-badge>
  66. </view>
  67. </demo-item>
  68. </view>
  69. </cl-page>
  70. </template>
  71. <script lang="ts" setup>
  72. import { t } from "@/locale";
  73. import DemoItem from "../components/item.uvue";
  74. </script>