@AuraEnabled & @Deprecated

DEX455 - Apex 类、对象与接口完全指南

📄 第 139 页 🎬 视频课程

课程章节介绍

今天我们来看两个在Apex开发中非常实用的小注释,一个是,@AuraEnabled,,另一个是,@Deprecated,。这两个东西虽然写起来很简单,但用好了能让你的代码更灵活、更清晰。 --- 首先说说,@AuraEnabled,。 它的作用就是告诉Salesforce:“嘿,这个方法,Lightning组件要用到它!” 也就是说,加了`@AuraEnabled`注解,这个方法就可以同时被客户端(也就是Lightning组件)和服务器端直接调用。 而且从API 44.0版本开始,你还可以多加一个参数叫`cacheable=true`。它有什么好处呢? 就是如果组件多次请求同样的数据,不需要重复跑服务器逻辑,直接从缓存里拿结果就行了,这样性能会更好。 简单总结:想让你的Apex方法在Lightning组件里用,就记得加上`@AuraEnabled`,需要缓存就写`@AuraEnabled(cacheable=true)`。 --- 再来看,@Deprecated,。 它表示“这个方法、类或变量已经过时了,以后的新版本可能不再支持”。 特别是在做托管包(managed package)开发的时候,随着需求变化,我们可能会重写一些代码。 但是老用户还在用旧方法,直接删掉会让他们出问题。 这时候就可以给旧的方法加上`@Deprecated`注解。 效果就是:新安装包的用户看不到这些已弃用的东西,但现有的订阅者还能继续用,给他们时间慢慢迁移到新方法。 等于给了一个缓冲期,既能让代码保持整洁,又不会影响现有集成。 注意啊,被标记为`@Deprecated`的方法即使不再推荐使用,但只要没被彻底移除,就还能正常执行。 --- 这样讲是不是很简单?用的时候记住这两点就行: - ,@AuraEnabled,:打通客户端和服务器,按需加上`cacheable=true`优化性能。 - ,@Deprecated,:给过时代码打个标记,提醒自己和他人别再用老方法了,但又给现有用户缓冲时间。 以后在写Apex类的时候,看到这两个注解就能明白它们是什么意思,也知道怎么用了。

关键词

Apex Salesforce Developer Guide