BEM 嵌套元素和悬停效果

BEM nesting elements and hover effects

所以,假设我有以下代码

<div class="list">
    <div class="list__wrapper"> 
        <ul class="list__menu">
            <li class="list__item">
                <a class="list__link">Link</a>
                <p class="list__description">Desc</p>
            </li> 
        </ul>
    </div>
</div>

我的 SCSS 看起来像这样:

.list {
    &__wrapper {

    }    

    &__menu {

    }
    ...
}

问题:

我想在 li 上创建一个悬停效果,它将容纳 list_link 和其他一些元素,但我只想将颜色更改为 list__link class 我想知道如何在 SCSS 中最有效地做到这一点。

我目前的解决方案(我不太喜欢)

.list {
    &__item {
        &:hover {
            .list__link {
                 color: $secondary
            }
        }
    }    
}

我确定我做错了什么,因为感觉我正在破坏 SCSS 和 BEM 的优势,但到目前为止我还没有找到解决方案。

您可以通过执行以下操作来简化此选择器:

.list {
  &__item:hover .list__link {
    color: $secondary;
  }
}