首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vue -将道具从对象传递到组件。

vue -将道具从对象传递到组件。
EN

Stack Overflow用户
提问于 2018-10-30 02:48:54
回答 1查看 501关注 0票数 0

我需要将一些道具传递给组件,我将道具放在一个对象中,我想这样做:

代码语言:javascript
复制
<v-btn 
  btn.size.sm 
  btn.size.md 
  btn.size.lg
>
{{ btn.text }}
</v-btn>

其中,我的btn对象如下所示:

代码语言:javascript
复制
btn = {
  text:"Click me",
  size:{
    sm:"sm-12",
    md:"md-6",
    lg:"lg-4"
  }
}

由此产生的组件将相当于编写:

代码语言:javascript
复制
<v-btn 
  sm-12
  md-6
  lg-4
>
{{ btn.text }}
</v-btn>

这有可能吗?我认为目前唯一能做到这一点的方法是为每个尺寸的变化提供一个支柱,然后有条件地将其设置为真或假。但这似乎太过分了。有人有什么想法吗?

FYI -如果这有什么区别的话,我用的是Vuetify

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-30 02:59:49

使btn对象如下所示:

代码语言:javascript
复制
btn = {
  text:"Click me",
  size:{
    "sm12": true,
    "md6": true,
    "lg4": true
  }
}

然后可以使用v-bind语法创建属性:

代码语言:javascript
复制
<v-btn v-bind="btn.size">
  {{ btn.text }}
</v-btn>

或者如果您不能更改btn对象:

代码语言:javascript
复制
btn = {
  text:"Click me",
  size:{
    sm:"sm12",
    md:"md6",
    lg:"lg4"
  }
}

注意,您也可以将它们绑定为类:

代码语言:javascript
复制
<v-btn v-bind:class="Object.values(btn.size)">
  {{ btn.text }}
</v-btn>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53056687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档