示例中 aura:set 的目的是什么?

What is the purpose of aura:set in the example?


<aura:iteration items="{!v.contactlist}" var="con">
       <div class="slds-col slds-size_1-of-3 slds-p-around_small">
         <lightning:card title="{!con.LastName}" footer="{!con.Email}" iconName="standard:contact">
           <aura:set attribute="actions">
            <lightning:button name="{!con.Id}" label="view details" variant="brand" onclick="{!c.doredirect}"></lightning:button>
           </aura:set>
         <p class="slds-p-horizontal_small">
         {!con.FirstName}  {!con.LastName}
         </p>
         <br/>
        </lightning:card>
      </div>
     </aura:iteration>

既然lightning:button已经有onClick触发控制器功能,那为什么还需要< aura:set attribute="actions"> ?

请帮忙!

“设置”不是用来修改按钮的。它为您提供了一种将内容注入 lightning:card 上正确位置的方法。这样您的按钮将与系统中的其他卡片显示一致。否则你必须把按钮放在卡体的某个地方?或者手动重新创建整个样式(您可以使用 LDS,但如果样式将来发生变化怎么办)?

https://developer.salesforce.com/docs/atlas.en-us.lightning.meta/lightning/components_facets.htm 您可以使用相同的技巧来构建您自己的可重用组件,只需注入少量更改即可。 LWC 使用类似的东西,但它被称为“slots”而不是“facets”。