소스 검색

自定义指令封装

songxy 1 년 전
부모
커밋
6f2d17cf22
1개의 변경된 파일25개의 추가작업 그리고 0개의 파일을 삭제
  1. 25 0
      client/src/directives/Money.ts

+ 25 - 0
client/src/directives/Money.ts

@@ -0,0 +1,25 @@
+import type { App } from 'vue'
+
+export function Money(app: App<Element>) {
+  app.directive('money', (el, binding) => {
+    const { value, arg } = binding
+    if (value === null || value === undefined) {
+      el.innerHTML = `0${arg === 'unit' ? '元' : ''}`
+      return
+    }
+
+    if (value < 10000) {
+      if (value.toString().indexOf('.') != -1) {
+        el.innerHTML = `${value.toFixed(2)}${arg === 'unit' ? '元' : ''}`
+      } else {
+        el.innerHTML = `${value}${arg === 'unit' ? '元' : ''}`
+      }
+    } else {
+      if ((value / 10000).toString().indexOf('.') != -1) {
+        el.innerHTML = `${(value / 10000).toFixed(2)}${arg === 'unit' ? '万元' : ''}`
+      } else {
+        el.innerHTML = `${value / 10000}${arg === 'unit' ? '万元' : ''}`
+      }
+    }
+  })
+}