
vite 按需引入 vant 时样式差异的原因
当按需引入 vant 时,你会发现标签组件可以正常显示样式,但 javascript 表达式的组件却无法显示样式。这是因为:
原因:
vite 默认按需加载组件的 javascript 文件,但不加载其样式文件。标签组件可以通过模板被直接渲染,因此可以加载样式。而 javascript 表达式的组件则需要额外的步骤来加载样式。
立即学习“Java免费学习笔记(深入)”;
解决方案:
有两种解决方法:
方法 1:使用 unplugin-auto-import 插件和全局注册
- 安装 unplugin-auto-import 插件。
- 在 vite 配置文件中启用该插件。
- 去掉 sfc 中手动导入的 vant 组件。
- 单独全局注册这些函数形式的组件,并手动导入它们的样式:
import { toast } from 'vant';
import { imagepreview } from 'vant';
import 'vant/es/toast/style';
import 'vant/es/image-preview/style';
app.use(toast);
app.use(imagepreview);方法 2:引入组件样式文件
- 手动导入 javascript 表达式组件的样式文件,例如:
import 'vant/es/cell/style'; import 'vant/es/cell-group/style';










