Visualforce面试题及答案 - [ 软件和工具 ]

Visualforce是基于标签的标记语言,用于在salesforce中开发自定义的用户界面。

1. Visualforce是什么?

Visualforce是基于标签的标记语言,用于在salesforce中开发自定义的用户界面。

详细答案>>

2. Salesforce中的Visualforce Controller是什么?它们是什么?

Visualforce控制器是一组指令,用于指定当用户与Visualforce页面上的组件(例如按钮和链接)进行交互时发生的情况。 共有三种类型的控制器。如下:标准控制器,自定义控制器和控制器扩展。详细答案>>

3. 什么是标准控制器?

标准控制器为salesforce提供了内置功能,可与visualforce页面进行交互。可以使用标准控制器来使用诸如保存,编辑,取消和删除之类的标准操作。 语法: <apex:page standardController="Account"> 详细答案>>

4. 什么是标准列表控制器?

标准列表控制器允许在visualvalfoce页面中显示记录列表。 与标准控制器相比,标准列表控制器提供了其他分页操作 (First, Lat, Next & Previous) 。 语法: <apex:page standardController="Account" recordSetVar="accounts"> 定义此控制器类似于标准控制器。 但是需要再添加一个属性recordSetVar详细答案>>

5. 什么是自定义控制器?

自定义控制器是一个apex 类,可对Visualforce页面实施自定义逻辑。
我们可以使用自定义控制器来覆盖或创建新功能。

语法:

<apex:page controller="Account" >
详细答案>>

6. 可以一次使用standardController和controller属性吗?

不能,我们不能一次引用这两个属性。 参见下面的语法: <apex:page standardController="ControllerName" extensions="Class1, Class2,.."> 正确 <apex:page Controller="MYControllerName" extensions="Class1, Class2,.."> 正确语法 <apex:page standardController="MYControllerName" Co...详细答案>>

7. 标准控制器的任务是什么?

标准控制器提供了访问和与适当用户界面中的记录显示中包含的结构化业务数据进行交互的功能。

标准控制器任务:控制数据,控制动作和控制导航。

详细答案>>

8. 如何在Salesforce中创建Visualforce页面?

我们可以通过两种方式创建visualforce页面。 1.从设置菜单转到设置->开发->构建->页面->单击新按钮创建页面并为visualforce页面输入名称和代码。2.从vsualforce编辑器。 在URL上输入/apex/pagename并在visualforce编辑器中创建新页面。详细答案>>

9. visualforce标记中的<apex:page>标签是什么?

此标签表示单个visualforce页面。 每个页面必须以该标签开头和结尾。

示例:

<apex:page>

<!– Body of the page –>

</apex:page>
详细答案>>

10. 如何启用Visualforce编辑器?

需要在用户级别选中"开发模式"复选框以启用visualforce编辑器。
要启用此功能,请转到用户详细信息页面,选中开发模式复选框。

详细答案>>

11. 页面中用于绑定控制器的表达式是什么?

使用我们可以绑定的方法。
Getter:将值从控制器返回到vf页面
Setter:将值从vf页面传递到控制器
Action:将重定向到另一个页面。

详细答案>>

12. 控制器的目的是什么?

控制器提供Visualforce页面可用的数据和操作。

详细答案>>

13. 哪些对象具有关联的标准控制器?

可以通过API访问的所有标准和自定义对象都具有关联的控制器。

详细答案>>

14. 每个标准控制器包含什么?

数据:可通过API访问的关联对象记录的字段,包括相关记录(5向上/1向下)。 动作:保存,删除,查看,编辑,取消。

详细答案>>

15. 何时需要超越标准控制器并编写自定义Apex代码?

如果您需要的数据超出了标准控制器中可用数据的限制或超出了提供的标准操作的操作。

详细答案>>

16. 比较和对比自定义控制器和控制器扩展。 它们有什么区别?

两者都允许使用自定义代码,从而允许自定义数据集和自定义操作。 扩展利用标准或自定义控制器中的现有数据和操作。自定义控制器必须包含该页面需要执行的所有数据和操作。 扩展标准控制器的扩展允许在自定义按钮,标准按钮替代以及声明性功能中使用使用这些扩展的页面。详细答案>>

17. 什么将控制器识别为扩展?

控制器必须声明一个构造函数,该构造函数显式采用另一个控制器。 例如: public myControllerExtension(ApexPages.StandardController stdController) { this.acct = (Account)stdController.getRecord(); } 详细答案>>

18. 为什么属性对控制器有帮助?

属性可以自动创建标准的getter和setter,同时仍然允许对其进行自定义。 在审查代码时,它们可以避免编写繁琐的代码和阅读混乱的代码。

详细答案>>

19. 方法在控制器中以什么顺序触发?

唯一的规则是,设置员必须先采取行动方法。 除此之外,没有保证的顺序。

详细答案>>

20. 控制器中通常使用哪些Apex类?

StandardController,SelectOption,PageReference,Message等。

详细答案>>

21. 向导控制器与其他控制器有何不同?

两个主要问题是它们必须处理多个页面,并且必须维护这些页面之间的状态。

详细答案>>

22. 使用transient关键字有什么影响?

transient关键字可防止将数据保存到视图状态。 这应该用于非常临时的变量。

详细答案>>

23. 自定义组件何时需要组件控制器?

当需要业务逻辑来决定如何呈现组件时,需要组件控制器。

详细答案>>

24. Visualforce页面可以包含哪些内容?

可以在浏览器中呈现的任何内容(HTML,JavaScript等)。

详细答案>>

25. 在Visualforce组件中使用{!expressions}指的是什么?

表达式表示从控制器对页面可用的数据或动作。

详细答案>>

26. 将可视页面合并到用户界面其余部分的方式是什么?

基本上是通过链接,按钮,选项卡和嵌入式框架。

详细答案>>

27. 是否总是需要了解Apex才能创建Visualforce页面? 什么时候有必要?

不是,并非总是必要的。 您可以使用标准控制器和VF组件标签来完成很多工作。 当您需要自定义数据集或自定义操作从页面中可用时,Apex成为必需。

详细答案>>

28. 什么是属性?包含它们的语法是什么?

属性是主标签的修饰符,它们属于开始标签中的标签名称。 语法为:attributeName ="attributeValue"

详细答案>>

29. Visualforce中使用的三种绑定类型是什么? 分别指的是什么?

Visualforce中使用的三种绑定类型是 -
数据绑定是指控制器中的数据集。
动作绑定是指控制器中的动作方法。
组件绑定引用其他Visualforce组件

详细答案>>

30. 使用dataTable和pageBlockTable标签之间的主要区别是什么?

PageBlock:用于默认的salesforce标准格式。
dataTable:设计自定义格式

详细答案>>

31. 单选按钮和选择列表都使用哪个标签来创建可选值?

使用<Apex:selectoption>标签

详细答案>>

32. 一个页面可以有几个控制器? 页面的控制器分配在哪里?

一个主控制器(当然,它可以具有扩展名或自定义组件可以具有控制器等)。 在<apex:page>标记中分配了控制器。

详细答案>>

33. 有一系列布局组件,所有这些组件都可以非常轻松地重新创建传统的Salesforce页面布局样式。它们共用什么名字?

它们共用的名字是:pageBlock。

详细答案>>

34. 应使用哪些标签来自动引入Salesforce标签和字段的默认小部件?

pageblock

详细答案>>

35. 什么是静态资源?

静态资源是Salesforce中的一种新型存储,专门用于Visualforce页面中。 它们是在Salesforce服务器上存储图像,Flash文件,样式表和其他Web资源的方法,可以对其进行缓存以提高页面性能。

详细答案>>

36. JavaScript事件有哪些?

JavaScript事件的一些示例是:Onmouseover,onclieck等。

详细答案>>

37. Visualforce中通常使用AJAX来做什么?

AJAX主要用于Visualforce中的部分页面更新。 在s-controls中,AJAX工具包是soap(HTTP上的XML)客户端,可让您访问force.com Web服务API。

详细答案>>

38. <script>标签的目的是什么?

脚本<script>标记允许您创建可在页面内使用的JavaScript(或其他类型)函数。

详细答案>>

39. 有哪些不同的AJAX动作标签? 各自做什么?

AJAX动作标签如下 -actionStatus:用于显示AJAX请求的开始和停止状态。actionSupport:用于在第一个组件发生事件时调用第二个组件。actionPoller:与actionSupport类似,但事件基于计时器而不是用户操作。actionFunction:通过定义新的JavaScript函数,提供对使用AJAX请求从JavaScript代码调用控制器动作的支持。actionRegion:用于划分服务器应重新处理页面的哪些部分。详细答案>>

40. 如何创建部分页面刷新?

基本上,需要定义要刷新的页面部分(通常使用各种面板),然后定义将导致刷新的事件。 该方法根据刷新区域是否与处理事件的区域相同而改变。 这还取决于您是否仅在服务器上处理某些内容,或者是否需要更改UI。详细答案>>

41. 单选按钮和选择列表都使用哪个标签来创建可选值?

<apex:selectOption>
详细答案>>

42. 在组件上创建属性的目的是什么?

通过允许组件通过属性获取参数,可以使组件更加灵活和可重用。

详细答案>>

43. 全局关键词是什么?

全局关键字,例如component,User,url,当前页面等,以访问页面上的组件,用户对象或url或当前页面字段中的各种值。 为了从每个来源获取价值,我们有不同的全局关键字。 上面的问题(!$ component)中解释了一个这样的关键字。 各种全局关键字是: i. URLii. USERiii. PROFILEiv. Resourcev. Componentvi. Current pagevii. Page reference详细答案>>

44. 如何在JavaScript中访问visualforce组件值?

使用组件全局变量,我们可以在javascript中访问visualforce组件。假设要使用id =" afield"的 apex 字段的id。 因此,我们可以使用{!$Component.afield}语法在javascript中使用字段的属性。假设要将字段的值存储在Java脚本中,那么我们可以像下面这样使用: <script> Var a ='document.getElementById("{!$component.afield}").value';...详细答案>>

45. Salesforce.com中的 Gov Limits是什么?

由于Apex在多租户环境中运行,因此Apex运行时引擎严格执行一些限制,以确保逃逸脚本不会垄断共享资源。这些限制或调控器可跟踪并执行下表中概述的统计信息。 如果脚本超出限制,则关联的调控器将发出无法处理的运行时异常。详细答案>>
注: 此试题仅作为相关知识水平测试,不能作为权威试题和答案。非商业转载注明原文链接即可;商业转载需本站授权同意。