setIconfont.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // 字体图标 url
  2. const cssCdnUrlList: Array<string> = [
  3. '//at.alicdn.com/t/font_2298093_y6u00apwst.css',
  4. '//at.alicdn.com/t/c/font_3882322_9ah7y8m9175.css', //dvadmin3项目用icon
  5. '//netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css',
  6. '//cdn.jsdelivr.net/gh/lipis/flag-icons@6.11.0/css/flag-icons.min.css', // 国旗图标
  7. ];
  8. // 第三方 js url
  9. const jsCdnUrlList: Array<string> = [];
  10. // 动态批量设置字体图标
  11. export function setCssCdn() {
  12. if (cssCdnUrlList.length <= 0) return false;
  13. cssCdnUrlList.map((v) => {
  14. let link = document.createElement('link');
  15. link.rel = 'stylesheet';
  16. link.href = v;
  17. link.crossOrigin = 'anonymous';
  18. document.getElementsByTagName('head')[0].appendChild(link);
  19. });
  20. }
  21. // 动态批量设置第三方js
  22. export function setJsCdn() {
  23. if (jsCdnUrlList.length <= 0) return false;
  24. jsCdnUrlList.map((v) => {
  25. let link = document.createElement('script');
  26. link.src = v;
  27. document.body.appendChild(link);
  28. });
  29. }
  30. /**
  31. * 批量设置字体图标、动态js
  32. * @method cssCdn 动态批量设置字体图标
  33. * @method jsCdn 动态批量设置第三方js
  34. */
  35. const setIntroduction = {
  36. // 设置css
  37. cssCdn: () => {
  38. setCssCdn();
  39. },
  40. // 设置js
  41. jsCdn: () => {
  42. setJsCdn();
  43. },
  44. };
  45. // 导出函数方法
  46. export default setIntroduction;