我正在尝试从Vuetify/Vue 2升级到3。我不是前端开发人员,只是负责升级一些旧代码以保持功能正常。不幸的是,迁移指南似乎假设了一定的基本CSS知识,并没有提供如何修复所有被删除内容的示例。
我正在努力弄清楚如何迁移以下代码片段中的rounded和flat:
<v-select
class="mr-2 filter-custom-input"
slot="prepend-inner"
v-model="field"
:items="fields"
menu-props="auto"
label="Field"
hide-details
single-line
density="compact"
rounded
flat
theme="dark"
/>
以及这个代码片段中的.v-application(如果需要的话):
<style lang="scss" scoped>
.v-application--is-ltr .v-list-item__icon:first-child,
.v-application--is-ltr .mr {
margin-right: 10px;
}
</style>
不幸的是,迁移指南上对这些的唯一建议是:
rounded属性已被移除。请将圆角的CSS类应用于菜单内容元素。例如:.rounded-te.v-application p或.v-application ul的全局样式不再包含在内。如果您需要为p添加边距,或为ul和ol添加左侧内边距,请在根组件的<style>标签中手动设置。上述关于rounded的指导仅仅替换rounded为.rounded-te是不起作用的(更不用说它是在另一种类型的控件中提到的)。
它说flat已从其他一些控件中删除,并被“单个变体属性”替换,但是尝试用variant="flat"替换flat给我一个语法错误。
谢谢!
(我最初在这里提问,有人建议我将其拆分为多个问题)
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
你仍然可以使用
rounded和flat,它们只是移动到了底层的 VField 组件。我认为你的 v2 select 最终会没有任何框架,这种情况下
rounded不会有任何可见效果。在 v3 中添加variant="solo"和flat以获得相同的效果(参见 playground)至于
v-application--is-ltr类,它在 V3 中被称为v-locale--is-ltr。如果你仍然需要它取决于你的应用程序,这些都是自定义规则。检查是否使用了自定义的
mr类,以及列表中第一个图标的边距是什么样的(我认为现在通过 prepend slot 设置列表图标,所以类应该是.v-list-item__prepend .v-icon)