博客
关于我
Salesforce学习之路(十)Aura组件工作原理
阅读量:463 次
发布时间:2019-03-06

本文共 1327 字,大约阅读时间需要 4 分钟。

Lightning Component框架是一个高效的UI框架,专为开发移动和台式设备的Web应用程序设计。作为Lightning Platform的单页面Web应用框架,它结合了客户端的JavaScript和服务器端的Apex语言,能够构建响应式、动态的用户界面。通过Lightning Component,开发者无需手动编写所有代码,即可创建自定义应用程序。

Lightning Component框架的核心架构包括View和Controller两大部分。View主要采用XML标记结合Aura组件的静态HTML标签进行定义,例如<aura:component>标签。熟悉Visualforce开发者会对此非常熟悉,命名格式遵循namespace:tagName。Aura组件提供了丰富的预定义组件,极大地降低了开发和学习成本,开发者可以直接使用这些组件进行定制化。

在客户端,View负责展示数据,Controller则通过JavaScript与服务端进行数据交互,获取所需数据并传递给View。服务端部分主要包含Controller和Database,Controller采用Apex语言(类似于Java)进行开发,数据库则通过DML操作进行数据管理。Apex类文件以.cls为后缀,客户端View文件通过类名称进行绑定。

Aura组件是基于Lightning Component框架的二次开发,其主要特点是通过组件捆绑包实现功能扩展。组件的命名规则要求组件名称以字母开头,仅包含字母、数字和下划线字符,且在命名空间中唯一。避免使用空格、下划线结尾以及连续下划线。

创建一个新的Aura组件捆绑包时,工程会自动生成多个资源文件,包括.auradoc(组件文档)、.cmp(组件标记文件)、.css(CSS样式文件)、.design(设计文件)、.controller.js(客户端控制器文件)、.helper.js(辅助函数文件)、.renderer.js(渲染器文件)、.svg(图标文件)和.controller.cls(服务端控制器文件)。这些资源文件严格遵循命名规则,并自动绑定连接,例如<aura:component controller="TestAuraController">会自动连接TestAuraController.cls类。

组件的工作原理非常清晰。组件的核心是.cmp文件,该文件定义组件的视图,其他文件如.controller.js.helper.js则负责与服务端数据进行交互。.controller.js与View交互获取数据,.helper.js与服务器Controller交互获取数据库数据,两者共同完成组件的功能开发。通过合理配置组件的访问控制,可以严格控制组件、属性、接口、事件和方法的访问权限,确保组件的安全性和可维护性。

在组件开发过程中,CSS样式和标记文件的设计至关重要。组件的顶级元素必须添加.THIS类,防止CSS样式被其他组件的样式覆盖。例如,.THIS .white类可以为特定元素定义白色背景样式,而未加类的顶级元素则使用默认的.THIS样式。这种方式确保了组件的样式唯一性和一致性。

转载地址:http://ecbbz.baihongyu.com/

你可能感兴趣的文章
npm入门,这篇就够了
查看>>
npm切换到淘宝源
查看>>
npm切换源淘宝源的两种方法
查看>>
npm前端包管理工具简介---npm工作笔记001
查看>>
npm包管理深度探索:从基础到进阶全面教程!
查看>>
npm升级以及使用淘宝npm镜像
查看>>
npm发布包--所遇到的问题
查看>>
npm发布自己的组件UI包(详细步骤,图文并茂)
查看>>
npm和package.json那些不为常人所知的小秘密
查看>>
npm和yarn清理缓存命令
查看>>
npm和yarn的使用对比
查看>>
npm如何清空缓存并重新打包?
查看>>
npm学习(十一)之package-lock.json
查看>>
npm安装 出现 npm ERR! code ETIMEDOUT npm ERR! syscall connect npm ERR! errno ETIMEDOUT npm ERR! 解决方法
查看>>
npm安装crypto-js 如何安装crypto-js, python爬虫安装加解密插件 找不到模块crypto-js python报错解决丢失crypto-js模块
查看>>
npm安装教程
查看>>
npm报错Cannot find module ‘webpack‘ Require stack
查看>>
npm报错Failed at the node-sass@4.14.1 postinstall script
查看>>
npm报错fatal: Could not read from remote repository
查看>>
npm报错File to import not found or unreadable: @/assets/styles/global.scss.
查看>>