vue3如何动态切换css文件引入
时间: 2024-05-03 22:17:17 浏览: 188
Vue3 中可以通过动态生成 `<link>` 标签的方式来实现动态切换 CSS 文件的引入。具体实现步骤如下:
1. 在 `index.html` 文件中,将需要动态切换的 CSS 文件引入到一个默认的 `<link>` 标签中,例如:
```html
<link id="dynamic-css" rel="stylesheet" href="default.css">
```
2. 在 Vue3 组件中,通过以下代码动态创建一个新的 `<link>` 标签,并将其插入到文档头部:
```javascript
const link = document.createElement('link')
link.setAttribute('rel', 'stylesheet')
link.setAttribute('type', 'text/css')
link.setAttribute('href', 'new.css')
document.head.appendChild(link)
```
3. 在需要切换 CSS 文件的时候,只需要修改 `link` 标签的 `href` 属性即可:
```javascript
const link = document.querySelector('#dynamic-css')
link.setAttribute('href', 'new.css')
```
这样就可以实现动态切换 CSS 文件引入了。需要注意的是,如果需要在组件销毁时移除动态添加的 `<link>` 标签,可以通过 `document.head.removeChild(link)` 的方式实现。
阅读全文