javascript - 尝试将 javascript 按钮转换为闪电组件
问题描述
我无法使用转换器转换 Java 按钮
我尝试使用 Lightning Experience 配置转换器将 java 按钮转换为 Lightning 组件(完整),但每次(我生活在生产中),我都会收到此错误“由于超时,我们无法将一些元数据部署到您的组织”由于我可以预览组件和控制器代码,我相信我可以简单地将其复制到沙箱然后推送。
创建组件时出现错误(复制代码-Developer Console-New Lightning 组件),创建控制器时出现其他错误-New-Apex 类..
我插入了转换器提供的代码图像和原件(组件、控制器和原件)
它旨在为点击时的铭文分配一个唯一的订单号。
控制器
({
apexExecute : function(component, event, helper) {
//Call Your Apex Controller Method.
var action = component.get("c.updateOrderNumber");
action.setParams({
'inscriptionId': ''+component.get('v.sObjectInfo.Id')+''
});
action.setCallback(this, function(response) {
var state = response.getState();
console.log(state);
if (state === "SUCCESS") {
//after code
if (''+component.get('v.sObjectInfo.Order_Number__c')+'' == '') { var result = response.getReturnValue();
window.location.reload(false);
} else helper.showTextAlert(component, 'Order Number already Exist');
} else {
}
});
$A.enqueueAction(action);
},
accept : function(component, event, helper) {
$A.get("e.force:closeQuickAction").fire();
}
})
组件
<aura:component controller="UpdateOrderNumberOnButtonClick" extends="c:LCC_GenericLightningComponent" >
<aura:handler event="c:LCC_GenericApplicationEvent" action="{!c.apexExecute}"/>
<aura:set attribute="partially" value="false"></aura:set>
<aura:attribute name="showAlert" type="Boolean" default="false"/>
<aura:attribute name="alertText" type="String"/>
<aura:set attribute="isAdditionalObject" value="false"></aura:set>
<div>
<div class="slds-scrollable slds-p-around_medium slds-text-heading_small" id="modal-content-id-1">
<aura:if isTrue="{!v.showAlert}">
<p class="slds-hyphenate">{!v.alertText}</p>
<aura:set attribute="else">
<div style="height: 6.75rem;">
<div role="status" class="slds-spinner slds-spinner_large slds-spinner_brand">
<span class="slds-assistive-text">Loading</span>
<div class="slds-spinner__dot-a"></div>
<div class="slds-spinner__dot-b"></div>
</div>
</div>
</aura:set>
</aura:if>
<br/>
</div>
<footer class="slds-modal__footer">
<lightning:button class="slds-button_brand" onclick="{!c.accept}" label="Accept"/>
</footer>
</div>
</aura:component>
原始的 Javascript 按钮
Here's your current JavaScript button code, to compare with our suggestion.
{!REQUIRESCRIPT("/soap/ajax/24.0/connection.js")}
{!REQUIRESCRIPT("/soap/ajax/20.0/apex.js")}
var orderNumber = '{!Inscription__c.Order_Number__c}';
if(orderNumber == ''){
var result= sforce.apex.execute("UpdateOrderNumberOnButtonClick", "updateOrderNumber", {inscriptionId:'{!Inscription__c.Id}'});
window.location.reload(false);
}
else
alert('Order Number already Exist');
解决方案
推荐阅读
- android - 为什么我的代码没有进入这个适配器类?
- facebook - 没有访问令牌,无法获取 Facebook 用户的个人资料图片
- mongodb - 如何使用串联作为 MongoDB $in 运算符的字段名称?
- python - 如何在两者之间放置列比较并写入csv
- asp.net - 使用 Azure devops 管道构建和部署 Asp.net 应用程序
- ios - WKWebView里面的HTTPRequest拦截是可能的吗?
- enums - 将 Rust 枚举转换为子枚举
- ios - 使用 xamarin 应用程序覆盖现有的 ios 本机应用程序
- ios - AVAudioFile 将原始 PCM 编码为 AAC 时文件非常大
- list - Flutter / Dart如何组合地图列表中的值