无法将对象数组放入从 Aura 组件调用的控制器函数中 <ui:InputNumber>
Can't get the Object Array into Controller Function called from the Aura Component <ui:InputNumber>
谢谢大家对我的帮助!
我只是卡住了 我不知道这是 Salesforce 的问题还是
我做错了!!!
这是我在卡片上启用内联编辑的场景,当用户更改 Quantity 的值时,组件调用 JS Controller 函数
它没有得到我作为参数传递的列表,它的 Nothing 输出附在下面,
有趣的事实
但我从其他地方调用了相同的函数,比如 make a
复选框和相同的更改,我得到数组列表
作为参数传递
我从
除此之外,我使用 component.get()
获取所有值
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}" />
希望对您有所帮助。
谢谢大家对我的帮助! 我只是卡住了 我不知道这是 Salesforce 的问题还是
我做错了!!!
这是我在卡片上启用内联编辑的场景,当用户更改 Quantity 的值时,组件调用 JS Controller 函数
它没有得到我作为参数传递的列表,它的 Nothing 输出附在下面,
有趣的事实
但我从其他地方调用了相同的函数,比如 make a 复选框和相同的更改,我得到数组列表 作为参数传递
我从 除此之外,我使用 component.get()
获取所有值
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}" />
希望对您有所帮助。