使用setup语法糖,去掉scoped,disabled样式不生效

来源:4-9 Dropdown 组件添加 DropdownItem

Awesomeboy

2023-09-06

dropdownItem组件
老师我这个把scoped去掉了还是不起效果,检查发现is-disabled样式添加上去了,也就是disaled参数确实传入进去了,但不知道为什么不显示效果,老师帮帮我

<template>
  <!-- 封装dropdownItem组件 -->
  <!-- 动态绑定样式 取决于disabled属性值, true绑定样式-->
  <li class="dropdown-opion" :class="{ 'is-disabled': disabled }">
    <!-- 允许父组件在这个组件中插入自定义内容 -->
    <slot></slot>
  </li>
</template>

<script setup lang="ts">
//设置disabled属性
defineProps<{
  //布尔值
  disabled?: boolean
}>()
</script>

<style>
.dropdown-option.is-disabled * {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}
</style>

dropdown组件


    <div class="dropdown-menu" style="display: block" v-if="isOpen">
      <dropdown-item disabled><a href="#" class="dropdown-item">新建文章</a></dropdown-item>
      <dropdown-item disabled><a href="#" class="dropdown-item">编辑资料</a></dropdown-item>
    </div>

图片描述

写回答

2回答

张轩

2023-09-08

同学你好

你这里是拼写错误欧:

你定义的css .dropdown-option.is-disabled

类名是 dropdown-option

而你在 template 中写的类名是:dropdown-opion,少了一个 t

1
1
Awesomeboy
太感谢老师了,这么低级的错误,我太粗心了,真的谢谢老师
2023-09-08
共1条回复

张轩

2023-09-07

同学你好

请提供一下你的源代码(git),我在本地帮你看一下,谢谢

1
1
Awesomeboy
老师这是我的源代码:https://github.com/AwesomeBoyCai/Blog-Column.git,麻烦老师了!
2023-09-07
共1条回复

Vue3 + TS 仿知乎专栏企业级项目

带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能

3142 学习 · 2313 问题

查看课程