在尝试避免内联样式时,我试图使用对象来控制应用程序某些部分的样式。请问如何在下面的样式对象中使用props中的Color?
data: () => ({
props: ['header', 'questions', 'index', 'colour'],
sectionScore: [],
styling: {
borderLeft: '10px solid ${this.colour}'
}
}),
我在主体中使用的对象是:style =“ styling”。
答案 0 :(得分:2)
首先,应将props
选项声明为data选项之外的属性,其次,将styling
属性定义为计算后的属性:
props: ['header', 'questions', 'index', 'colour'],
data: () => ({
sectionScore: [],
}),
computed:{
styling(){
return {
borderLeft: `10px solid ${this.colour}`
}
}
}
答案 1 :(得分:0)
正如Boussadjra Brahim所说,应将props声明在数据外部,因为它与data属性无关。最好将styling
定义为计算属性:
computed: {
style_one() {
return { border: `1px solid ${this.color}` }
}
}
还有一个建议:预先定义传入的道具类型以及是否需要它们:
props: [
header: {
type: String,
required: true
},
questions: {
type: Array,
required: true
},
]