salesforce lightning零基础学习(十) Aura Js 浅谈三: $A、Action、Util篇

 前两篇分别介绍了Component类以及Event类,此篇将会说一下 $A , Action以及 Util。

 一. Action

Action类通常用于和apex后台交互,设置参数,调用后台以及对结果进行处理。可以通过component.get("c.functionName")创建一个action类的变量,functionName对应后台@AuraEnabled声明的方法。通过$A.enqueueAction可以将action加入队列中等待执行。

 

常用方法如下:

1.setParam (string key,Object value): 为这个Action设置单一的参数,此参数应该和后台apex中的参数名称一致;

2.setParams (Object config): 为这个Action设置一组参数,这组参数的名称应该和后台apex中的参数名称一致;

3.getName ():获取Action的Name。比如 var action = component.get("c.functionName"); 则此函数返回functionName;

4.getReturnValue ():获取Action从server端返回的response;

5.isBackground (): 判断当前的action在队列中是前台执行还是后台执行,后台执行返回true,前台返回false;

6.getError ():返回一组错误信息;

7.setCallback (Object scope,function callback,String name):当server端action返回以后,callback action将会被执行。方法有三个参数:

  • scope:方法被执行的作用域,通常设置为this;
  • callback:当server端action完成后,会调用这个callback函数。这个callback函数可以在显示阶段中注册,通常判断的显示阶段有三种:SUCCESS/ERROR/INCOMPLETE。通常 getError()方法和ERROR这种阶段结合来用;

Demo 举例:

1. TestActionController: 声明一个server端方法,用于component初始化调用;

复制代码
public class TestActionController {     @AuraEnabled     public static String initData(String testParam) {         return 'For test response : ' + testParam;     } }
复制代码

2. TestAction.cmp:初始化调用doInit方法对attribute进行初始化;

复制代码
<aura:component controller="TestActionController" implements="flexipage:availableForAllPageTypes">    <aura:handler name="init" value="{!this}" action="{!c.doInit}"/>    <aura:attribute name="testAttribute" type="String" description="test description"/>     {!v.testAttribute} </aura:component>
关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信