gpt4 book ai didi

javascript - vue中可以用函数的返回来定义div的样式吗?

转载 作者:行者123 更新时间:2023-12-05 04:49:06 27 4
gpt4 key购买 nike

嘿,我想在我的 div 的 v-bind:style 中调用函数 textposit,它使用 prop textpos 作为参数。函数的返回值应根据参数值更改 div 的样式。

<div class="container"  :style=" textposit(textpos) ">
<p class="headline">{{ headline }}</p>
<p class="text">{{ text }}</p>
</div>

这是我的脚本:

export default {
name: 'page',
components: {
},
props:{
headline: {
type: String,
},
text: {
type: String,
},
img: {
type: String,
},
align:{
type: String,
default: "center",
},
textpos:{
type: String,
default: "left",
},
textrows:{
type: Number,
default: 1,
}
},
methods:{
textposit (pos){
if (pos == "left") {
return{
"grid-column: 4 / 5"
}
}
else{
return{
"grid-column: 1 / 2"
}
}
}
}
}

它似乎调用了方法但没有改变我的div的样式。希望有人能帮忙:) 谢谢

最佳答案

此外,您还可以像这样将其用作属性值。 (我用颜色来可视化它)

const {
createApp
} = Vue

const App = {
methods: {
textposit(pos) {
if (pos == "left") {
return "red"
} else {
return "blue"
}
}
}
}

Vue.createApp(App).mount('#app')
<script src="https://unpkg.com/vue@next"></script>

<div id="app">
<div :style="{color: textposit('left')}">TEXT</div>
<div :style="{color: textposit('somethingelse')}">TEXT</div>
</div>

关于javascript - vue中可以用函数的返回来定义div的样式吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67726152/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com