salesforce 零基础学习(六十五)VF页面应善于使用变量和函数(一)常用变量的使用

我们在使用formula或者validation rules等的时候通常会接触到很多function,这些函数很便捷的解决了我们很多问题。其实很多函数也可以应用在VF页面中,VF页面有时候应该善于使用相关的常量和函数,便捷我们的开发。

一.常用的global variable篇

1.$CurrentPage:通过CurrentPage变量你可以获取当前页面的页面名称,URL以及参数(param)值;

1 <apex:page >
2     此页面的页面名称: {!$CurrentPage.Name}<br/>
3     此页面的URL:{!$CurrentPage.URL}<br/>
4     对此页面传递一个参数,key为param,此param对应的value为:{!$CurrentPage.Parameters.param}
5 </apex:page>

显示效果:

2.$Label:通过此变量可以获取custom labels中配置的自定义label,自定义label分成静止的内容以及动态的内容。

 1 <apex:page >
 2     <apex:pageBlock >
 3     此种方式为动态形式的label value显示:
 4     <apex:outputText value="{!$Label.Show_Message_Dynamic}">
 5         <apex:param value="1"></apex:param>
 6         <apex:param value="2"></apex:param>
 7     </apex:outputText>
 8     </apex:pageBlock>
 9     <apex:pageBlock >
10         此种方式为静态形式的label value显示:
11         <apex:outputText value="{!$Label.MEILAN_NOTE2}">
12         </apex:outputText>
13     </apex:pageBlock>
14 </apex:page>

其中Show_Message_Dynamic声明如下:

运行效果:

3.$ObjectType:类似apex中的SObjectType类的功能:通过此对象可以获取类或者字段的meta data,比如label名称等.项目中有的时候需要获取字段的label信息,通过此种方式获取的label信息可以直接实现国际化功能,而不用自己创建多套内容来维护国际化;

1 <apex:page >
2 <apex:pageBlock >
3     Account的Label : <apex:outputText value="{!$ObjectType.Account.Label}" style="color:red;"></apex:outputText><br/>
4     Account表中的字段为Name的Label : <apex:outputText value="{!$ObjectType.Account.Fields.Name.Label}" style="color:red;"></apex:outputText><br/>
5 </apex:pageBlock>
6 </apex:page>

运行效果:

4.$Page :类似apex中的pageReference功能,绑定在<a>标签等上面实现链接跳转功能。

1 <apex:page >
2 <a href="{!$Page.ObjectTypeVariableUsage}" target="_blank">跳转到其他页面</a>
3 </apex:page>

5.$Resource:此变量经常用到,我们有时候需要引入某个css文件或者js文件,或者显示某些文件图片等,需要先上传到static resources中,然后通过$Resource.file_name即可引入。

1 <apex:page >
2     <apex:stylesheet value="{!$Resource.test}"></apex:stylesheet>    
3     <span class="largerSize">字体比较</span><br/>
4     <span >字体比较</span>
5 </apex:page>

运行效果:

6.$User:获取当前登陆的用户信息:

1 <apex:page >
2     <apex:pageBlock >
3         <apex:outputText value="当前登陆用户的用户名称为:{!$User.Username}"></apex:outputText><br/>
4         邮箱地址为:{!$User.Email}
5     </apex:pageBlock>
6 </apex:page>

运行效果:

总结:VF中可以使用变量和函数,通过使用变量和函数有的时候可以使复杂的处理简单化,篇中只介绍一些简单常用的变量,其他变量使用可以参考官方提供的page的PDF。下一篇主要介绍函数在VF中的使用。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏24K纯开源

QT程序在发布的时候应注意的地方

---恢复内容开始---     我们用QT开发好的应用程序,如果要发布到其他计算机上运行怎么办呢?我们在用VC编程时,单独运行编译好的可执行文件时,经常会发现...

1705
来自专栏天天

跨域问题

733
来自专栏卡少编程之旅

webpack4配置入门和进阶

96112
来自专栏linux运维学习

linux学习第十八篇:vim编辑模式和命令模式

查看光标当前的man手册 shift+k d+f+字符 选中面积 v+t+字符 在vim里面删除光标后的所有字符 shift+d 删除当前光标上的单词 d+i+...

18510
来自专栏landv

java编译通过,为什么运行却提示找不到或无法加载主类?

1635
来自专栏林德熙的博客

win10 UWP 修改密码框文字水平

新建一个 PasswordBox 控件,编辑模板,可以看到 vs 自动写出很多代码

543
来自专栏Danny的专栏

【MyEclipse】——MyEclipse设置注释模板

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

763
来自专栏IT派

入门 node.js 你必须知道的那些事

exports 是 module.exports 的一个引用,意思就是指向同一块内存地址,node 中真正生效的是 module.exports, 修改 exp...

1150
来自专栏WindCoder

边学边用Gradle:Gradle的脚本结构

配置此项目的构建脚本类路径。可声明用于编译和执行构建脚本的类路径。该类路径也用于加载构建脚本使用的插件。

280
来自专栏前端说吧

跨域 - jsonp轻松搞定跨域请求

1.jsonp轻松搞定跨域请求 vue中使用axios,遇到跨域我就蒙逼了。第一次真正意义上的尝试使用jsonp js中用

482

扫码关注云+社区