You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.0 KiB

10 months ago
  1. import * as echarts from "echarts";
  2. interface inputMessage {
  3. info: string;
  4. tooshort: string;
  5. toolong: string;
  6. }
  7. interface selectMessage {
  8. info: string;
  9. }
  10. /**
  11. * antd vue的验证规则
  12. */
  13. export const validator = (
  14. minLength: number,
  15. maxLength: number,
  16. message: inputMessage
  17. ) => {
  18. return (_: any, value: string) => {
  19. if (!value) {
  20. return Promise.reject(message.info);
  21. } else if (value.length < minLength) {
  22. return Promise.reject(message.tooshort);
  23. } else if (value.length > maxLength) {
  24. return Promise.reject(message.toolong);
  25. } else {
  26. return Promise.resolve();
  27. }
  28. };
  29. };
  30. export const verifySelect = (message: selectMessage) => {
  31. return (_: any, value: string) => {
  32. if (!value) {
  33. return Promise.reject(message.info);
  34. } else {
  35. return Promise.resolve();
  36. }
  37. };
  38. };
  39. /**
  40. * echarts配置
  41. */
  42. export const createEcharts = (chartRef: any, option: any) => {
  43. const myChart = echarts.init(chartRef.value);
  44. myChart.setOption(option);
  45. };