vue中如何把scss文件中的值变成动态的?
请教一下这样写为什么浏览器解析不了值 width直接没有了
computed: { material_source_width() {
return this.detailData.material_source == '2' ? '25%' : '33%'
}
},
<style lang="scss">
$material-source-width: #{material_source_width};
.information-right-item {
display: flex;
width: $material-source-width;
}
</style>
回答:
scss
是css预编译
,所以根本不会在浏览器参与任何计算,
你应该换个思路,用css变量来实现.
这个是简单的demo: Vue SFC Playground
回答:
https://cn.vuejs.org/api/sfc-css-features.html#v-bind-in-css
回答:
可以在style里把值传进去
<div class="information-right-item" :style="{'--width': detailData.material_source == '2' ? '25%' : '33%'}"></div>
.information-right-item{ display: flex;
width: var(--width);
}
回答:
<template> <div :style="{ width: material_source_width }" class="information-right-item">
</div>
</template>
<script>
export default {
computed: {
material_source_width() {
return this.detailData.material_source == '2' ? '25%' : '33%'
}
},
}
</script>
<style lang="scss">
.information-right-item {
display: flex;
}
</style>
以上是 vue中如何把scss文件中的值变成动态的? 的全部内容, 来源链接: utcz.com/p/934540.html