vue2 老项目,没有使用vue3
但是编译时候提示
我习惯用 /deep/
官网文档上有说可以啊,
问题:
我检查了node_modules 没有[@vue-compiler-sfc]包,为什么会这样提示呢?
怎么解决编译时的问题?
此外有没有专门强调 ::v-deep 的文档?
vue2 老项目,没有使用vue3
但是编译时候提示
我习惯用 /deep/
官网文档上有说可以啊,
问题:
我检查了node_modules 没有[@vue-compiler-sfc]包,为什么会这样提示呢?
怎么解决编译时的问题?
此外有没有专门强调 ::v-deep 的文档?
node-sass 不支持 >>>
语法,推荐改用 /deep/
。后来,node-sass 被 deprecated,推荐使用 dart-sass。但 dart-sass 又和 /deep/
有冲突。所以,如果你使用 vue2 同时又使用 dart-sass,只剩一种选择 ::v-deep
。
<style scoped>
.a ::v-deep .b {
/* ... */
}
</style>
现在,你通过 npm i sass
命令安装的既是 dart-sass。
在 vue3 中,::v-deep
写法又被抛弃了,改用 :deep()
。
<style scoped>
.a :deep(.b) {
/* ... */
}
</style>
4 回答3.3k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
5 回答2.1k 阅读
2 回答4.9k 阅读✓ 已解决
4 回答4.5k 阅读✓ 已解决
4 回答2k 阅读✓ 已解决
2 回答2k 阅读✓ 已解决
::v-deep
没有文档,就是深度选择器>>>
操作符的别名,这是vue-loader文档里提到的。