无法将对象数组放入从 Aura 组件调用的控制器函数中 <ui:InputNumber>

Can't get the Object Array into Controller Function called from the Aura Component <ui:InputNumber>

谢谢大家对我的帮助! 我只是卡住了 我不知道这是 Salesforce 的问题还是

我做错了!!!

这是我在卡片上启用内联编辑的场景,当用户更改 Quantity 的值时,组件调用 JS Controller 函数

它没有得到我作为参数传递的列表,它的 Nothing 输出附在下面,

有趣的事实

  1. 但我从其他地方调用了相同的函数,比如 make a 复选框和相同的更改,我得到数组列表 作为参数传递

  2. 我从 除此之外,我使用 component.get()

  3. 获取所有值

Aura 组件属性

<aura:attribute name="item" type="Object" required="true"></aura:attribute>
<aura:attribute name="title" type="String" required="true"></aura:attribute>
<aura:attribute name="bid" type="Object[]" required="true"></aura:attribute>
<aura:attribute name="box1" type="Boolean" default="false" />
<aura:attribute name="categoriesSum" type="Object" required="true"></aura:attribute>
<aura:attribute name="quantityEditMode" type="boolean" default="false"></aura:attribute>

使用 InputNumber 调用组件代码无效

   <ui:inputNumber class="slds-input " labelClass="slds-form- 
   element__label slds-form-element__label_edit slds-no-flex" 
   change ="{!c.onQuantityChange}" 
   required="true" value=" 
   {!v.item.Quantity__c}" />

使用 CheckBox 工作的组件代码调用

<ui:inputCheckbox aura:id="checkbox1" value="v2" change="{!c.onQuantityChange}"/>

JS 控制器

  onQuantityChange : function(component, event, helper){
    console.log('----Item----'+component.get('v.item')); 
    console.log('----title---'+ component.get('v.title'));
    console.log('----Bid---'+ component.get('v.bid'));
    console.log('----Box---'+ component.get('v.box1'));
    console.log('---categoriesSum--component.get('v.categoriesSum'));
    console.log('----quantityEditMode---'+ component.get('v.quantityEditMode'));

   }

带 InputNumber 的输出

带复选框的输出

如果您需要更多解释,请告诉我我被困在这里将近 7 个小时,是的,我也尝试过助手 class 这是相同的情况[​​=17=]

您不能使用

直接更改对象上字段的值
value=" 
   {!v.item.Quantity__c}"

而是尝试将其保存在 v2 之类的属性中(您已在复选框中完成)

来自 ui:inputNumber 的更改将随后传送到控制器。

基本上是这样的:

<aura:attribute name="v2" type="Integer"/>
<ui:inputNumber class="slds-input " labelClass="slds-form- 
   element__label slds-form-element__label_edit slds-no-flex" 
   change ="{!c.onQuantityChange}" 
   required="true" value=" 
   {!v.v2}" />

希望对您有所帮助。