import Vue from "vue"; import svgIcon from "@/components/svgIcon/index.vue"; Vue.component("svg-icon", svgIcon); // 修改为将SVG注入到父应用DOM const requireContext = require.context("@/assets/icons/svg", false, /\.svg$/); const requireAll = (requireContext) => { const svgSymbols = requireContext.keys().map(key => { return requireContext(key).default || requireContext(key); }); // 创建SVG sprite容器 const spriteContainer = document.createElement('div'); spriteContainer.id = 'svg-sprite-container'; spriteContainer.style.display = 'none'; // 构建SVG sprite const svgSprite = ` ${svgSymbols.join('')} `; spriteContainer.innerHTML = svgSprite; // 关键:注入到父应用的body中 (window.parent || window).document.body.appendChild(spriteContainer); }; requireAll(requireContext);