register.vue 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <script setup lang="ts">
  2. import { reactive, onBeforeMount } from "vue";
  3. import info, { ContextProps } from "../components/ReInfo/index.vue";
  4. import { getRegist, getVerify } from "/@/api/user";
  5. import { useRouter } from "vue-router";
  6. import { warnMessage, successMessage } from "/@/utils/message";
  7. const router = useRouter();
  8. // 刷新验证码
  9. const refreshGetVerify = async () => {
  10. let { svg } = await getVerify();
  11. contextInfo.svg = svg;
  12. };
  13. const contextInfo: ContextProps = reactive({
  14. userName: "",
  15. passWord: "",
  16. verify: null,
  17. svg: null
  18. });
  19. // 注册
  20. const onRegist = async () => {
  21. let { userName, passWord, verify } = contextInfo;
  22. let { code, info } = await getRegist({
  23. username: userName,
  24. password: passWord,
  25. verify: verify
  26. });
  27. code === 0
  28. ? successMessage(info) && router.push("/login")
  29. : warnMessage(info);
  30. };
  31. const refreshVerify = (): void => {
  32. refreshGetVerify();
  33. };
  34. onBeforeMount(() => {
  35. // refreshGetVerify();
  36. });
  37. </script>
  38. <template>
  39. <div class="register">
  40. <info
  41. :ruleForm="contextInfo"
  42. @on-behavior="onRegist"
  43. @refreshVerify="refreshVerify"
  44. />
  45. </div>
  46. </template>