[快速入门]网页定制开发
云客服CEC-平台开放

API/移动SDK/Demo代码框架 等,支持企业二次开发客制化呼叫中心 免费试用 帮助文档 功能描述 语音回呼:一键双呼 语音通知 客制化呼叫中心 / 座席工作台 语音回呼:一键双呼 产品功能 网页回呼: 1.客户在企业门户网页填写手机号码,网页调用API 2.云呼叫中心分配座席,座席呼叫客户手机号码

定制自然语言处理

定制自然语言处理 NLPC 定制自然语言处理 NLPC 定制自然语言处理 (NLP Customization),根据客户特定需求构建专有的自然语言处理模型,为企业应用提供独特竞争力。例如,定制法律文案自动分类模型,定制医疗报告自动生成模型,定制特定领域的文本分析模型等 定制自然语言处理

定制建站_一对一网站设计建站_云速建站-华为云

客户服务包是在多终端自适应版本的基础上由专属设计师为您量身定制网站 客户服务包是在多终端自适应版本的基础上由专属设计师为您量身定制网站 立即购买 控制台 帮助文档 前往建站活动专区 客户服务包,专属设计师为您定制网站 客户服务包,专属设计师为您定制网站 基于多终端自适应版站点的定制设计服务,全程一对一服务,满意为止,了解更多

Web应用防火墙 WAF

XSS攻击、SQL注入、Webshell等常见Web攻击 非80、443标准端口防护 — CC攻击防护 — 网页防篡改 — 地理位置访问控制防护 — — 网站反爬虫防护 — — IPv6防护 — — 非标端口定制 — — 价格 ¥99 /月 购买 ¥3880 /月 购买 ¥9880 /月 购买 ¥29800

AGC

AppGallery Connect AppGallery Connect 为开发者提供移动应用全生命周期服务,覆盖全终端全场景,降低开发成本,提升运营效率,助力商业成功。 为开发者提供移动应用全生命周期服务,覆盖全终端全场景,降低开发成本,提升运营效率,助力商业成功。 发布 高效率上架分发应用 应用发布

Web应用防火墙 WAF功能

针对指定国家、地区的来源IP自定义访问控制。 网页防篡改规则 当用户需要防护静态页面被篡改时,可配置网页防篡改规则。 网站反爬虫规则 动态分析网站业务模型,结合人机识别技术和数据风控手段,精准识别700+种爬虫行为。 • 特征反爬虫 自定义扫描器与爬虫规则,用于阻断网页爬取行为,添加定制的恶意爬虫、扫描器特征,使爬虫防护更精准。

流水线 CodeArts Pipeline-资源页

获取海量开发者技术资源、工具 开发者计划 使能开发者基于开放能力进行技术创新 开发支持 专业高效的开发者在线技术支持服务 开发者学堂 云上学习、实验、认证的知识服务中心 开发者活动 开发者实训、热门活动专区 社区论坛 专家技术布道、开发者交流分享的平台 文档下载 代码检查 CodeArts Check服务文档下载

域名注册_域名购买_域名查询_网页域名注册申请-华为云

域名注册服务 Domains 域名注册服务 Domains 无论你是想托管一个新网站,还是小程序开发等,第一步都是注册一个完美的域名 无论你是想托管一个新网站,还是小程序开发等,第一步都是注册一个完美的域名 新用户专享热门域名注册1元起 搜索域名 默认排序 按名称A-Z 按名称Z-A

域名注册价格_域名购买_域名查询_网页域名注册申请-华为云

域名产品介绍 域名产品介绍 无论你是想托管一个新网站,还是小程序开发等,第一步都是注册一个完美的域名 价格计算器 帮助文档 购买须知 实名认证 根据工信部要求,注册域名需实名认证,因此在进行域名注册时,需要先创建信息模板并等待注册局实名认证通过。域名注册指引 不可退订 域名一经注册,不支持退订、注销和改名

[相关产品]网页定制开发
app定制开发

齿轮易创专注于软件定制开发业务,致力于提供企业软件解决方案,通过了解需求,为项目方提供专业的产品经理和开发,提供一个项目咨询+落地的服务。 提供您一个专属于您的定制化app。齿轮易创专注于软件定制开发业务,致力于提供企业软件解决方案,通过了解需求,为项目方提供专业的产品经理和开发,提供一个项目咨询+落地的服务。

Android定制开发

根据用户需求定制产品开发开发app应用于平板,手机,智能电视等android平台。可根据用户具体需求,开发串口通讯,语音播报,语音对讲等功能。应用场景包括:工厂、医院、娱乐场所包房、餐厅食堂、办公场所等可接入外围输入设备,包括:usb设备、串口设备、红外、蓝牙等现场工作状态,可通

定制开发服务

企业软件、网站、APP、小程序定制开发,根据客户需求提供从前期需求调研、产品设计、项目管理,到代码开发、部署实施、现场培训,专业团队全程跟踪。 专业开发团队,7*24小时全程跟踪服务

APP定制开发

APP定制开发,原生开发,混合开发,web开发;null

app系统定制开发

政府企业app系统定制开发分析与设计,源码开源完整交付数据安全多年的开发经验 用专业服务专业1.品牌设计成熟的设计师能驾驭任何风格,我们提供LOGO、VI手册及画册的设计2.系统开发细节决定成败,这正是我们一直以来的座右铭,从最初的需求到用户体验以及代码规范方面无一例外,每一个细节我们都力求完美!3

软件定制开发服务

企业软件定制开发,根据客户需求提供从前期需求调研、产品设计、项目管理,到代码开发、部署实施、现场培训,专业团队全程跟踪。企业官网、移动端APP、微信小程序。项目案例:设备管理、项目管理、智慧展示大屏、基层治理平台、织机监控等。以用户为导向,以需求为驱动,专业团队全程跟踪服务流程方

小程序定制开发

齿轮易创专注于软件定制开发业务,致力于提供企业软件解决方案,通过了解需求,为项目方提供专业的产品经理和开发,提供一个项目咨询+落地的服务。 提供您一个专属于您的定制化小程序。齿轮易创专注于软件定制开发业务,致力于提供企业软件解决方案,通过了解需求,为项目方提供专业的产品经理和开发,提供一个项目咨询+落地的服务。

软件定制开发服务

健全的软件研发管理流程,可为您提供高品质的软件定制开发服务。   服务理念以客为尊,诚信经营,专业敬业通过我们的服务,帮助客户实现价值和业务目标的达成服务领域1,企业管理软件定制开发;     根据客户公司自身业务流程,量身定制开发符合企业发展的管理软件; 如客户管理、生产管理、

小程序定制开发

小程序定制开发服务,基于可视化设计平台定制开发,快速为您交付稳定的软件系统。    我们真诚与您合作,承诺您满意了再付款,自主研发的可视化设计平台,快速应对不同的需求应用,合理的开发定价,基于成熟的设计平台,减少犯错成本,缩短开发周期,云端Saas软件服务,7*24运维及技术支持,数据备份,定期系统升级

[相似文章]网页定制开发
企业OA_OA办公系统网页版_OA系统定制

通过私有化部署的移动平台,客户可以打造自己的移动平台,保护数据安全和隐私。 WorkPlus移动应用平台 定制化服务 我们提供产品和原厂定制服务,根据客户的需求定制移动平台,满足客户个性化的要求。 我们提供产品和原厂定制服务,根据客户的需求定制移动平台,满足客户个性化的要求。 WorkPlus移动应用平台 灵活的管理功能

软件开发定制生产线_可视化软件开发生产线

软件开发定制生产线 CodeArts是集华为研发实践、前沿研发理念、先进研发工具为一体的研发云平台,面向开发者提供研发工具服务,让软件开发简单高效。华为云软件开发平台开放免费试用,欢迎您来体验。 立即购买 什么是软件开发定制生产线? 软件开发定制生产线 CodeArts是面向开发

云手机网页版在线使用_网页版云手机

云手机网页版在线使用 云手机网页版在线使用 云手机作为一种新型服务,依靠华为云的服务器底座、创新技术及周边服务的天然优势,让移动应用可以在云端智能运行。相比常见的手机模拟方案,云手机在性能、兼容性、稳定性等方面均有突出的表现。您可以远程实时控制云手机,实现安卓APP的云端运行;也

ERP定制开发_ERP全称是什么_ERP界面

ERP定制开发 ERP定制开发 基于安卓平台的工业APP,无缝集成金蝶云星空,将传统ERP移动化,功能覆盖库存物流制单、仓库、生产和工序汇报、品质检验、追溯、固定资产盘点,电子看板等,改善现场管理效益,节省成本。 基于安卓平台的工业APP,无缝集成金蝶云星空,将传统ERP移动化,

企业网站建设_网页设计_定制网站_怎么搭建公司网站_企业网站建设的流程

怎么搭建公司网站 搭建公司网站可以选择自助建站或者定制建站。自助建站可以自己使用网站模板建站,操作简单、快速且低成本。网站制作定制不用自己动手,请专业的人定制化为自己搭建即可。自助建站您可以选择华为云企业门户,定制建站您可以咨询华为云定制网站建设团队。 使用华为云企业门户,5步可快速搭建公司网站:

网站建设_网站搭建_网页搭建

量用于控制网站能承受多少客户访问。 • 购买精美模板:模板分为免费模板和精美模板,精美模板是由设计师精心设计的网页呈现效果,购买精美模板可以减少您对于网站样式的设计和开发。 • 安装模板:模板购买后不是立即生效,需要您安装模板后,才能在网站页面查看到模板的呈现效果。 查看详情 收起

ModelArts开发环境_开发环境简介_开发环境怎么使用

ModelArts开发环境 ModelArts开发环境简介 ModelArts开发环境,以云原生的资源使用和开发工具链的集成,目标为不同类型AI开发、探索、教学用户,提供更好云化AI开发体验。 ModelArts软件开发的历史,就是一部降低开发者成本,提升开发体验的历史。在AI开发阶段,M

RPA的特点_RPA的概念_网页RPA

帮助企业规范项目实施过程。5. 提供开发人员答疑和规范开发:专家服务面向WeAutomate RPA设计开发人员,提供对设计器的流程脚本开发的命令使用的详细答疑,命令使用详情答疑,脚本健康检查及规范开发等注意事项的解答。6. 提供自动化机会点识别:专家服务提供WeAutomate

云端开发环境服务_IDE _云开发

的云上开发环境。 支持6+主流开发语言并可扩展。 通过浏览器,可访问不同计算架构的环境 不限设备和操作系统,通过浏览器就可以访问不同计算架构(ARM和X86)的开发环境。 一个开发者可以同时使用多个开发环境,不受限于本地配置。 界面可定制,支持基于插件的横向能力扩展 开发环境桌面

网页定制开发

背景信息

当系统预置的组件无法满足用户需求时,用户可自定义组件包进行上传,在页面中进行使用。

场景描述

本节以开发网站中常用的标签切换页面为例,向您介绍如何基于组件模板在线开发组件。如图1所示,页面中主要包含标签栏和详情展示两部分,通过切换标签栏来控制详情展示中的内容。

图1 页面示例

在页面开发中,通过两个自定义组件(标签页组件、详情展示组件)实现上述场景,其中标签页组件包含产品类别(手机、笔记本、平板等),详情展示组件用于展示不同产品类别的图片信息。两个组件通过事件和动作机制实现交互,在标签页组件中注册标签切换事件,此事件绑定详情展示组件中切换产品图片的动作。

本节使用的示例组件开发过程中使用了前端开发框架Vue及组件库Element

操作步骤

  1. 下载组件模板。

    1. 参考如何登录AstroCanvas中操作,登录AstroCanvas界面。
    2. 单击页面右上角的“管理”,进入AstroCanvas管理页面。
    3. 在左侧导航栏中,选择“页面资产管理 > 组件模板”。
    4. 系统预置的模板如表1所示,请根据需求选择模板,选中后在模板详情页单击“下载”。
      本章节示例中同时开发标签页组件和详情展示组件,由于本例中组件基于Vue框架实现,所以优先选择widgetVueTemplate模板。
      表1 组件模板列表

      组件模板名称

      功能

      widgetVueTemplate

      当需要使用Vue library时,请选用该模板。

      widgetPropertyTemplate

      当需要自定义组件的一些属性时,请选用该模板。自定义属性会显示在组件的属性配置界面。

      widgetActionTemplate

      当自定义组件需要添加动作属性时,请选用该模板。

      事件和动作都是Widget的配置属性,用于实现Widget之间的交互。例如,单击某个Widget内的按钮,另外一个Widget需要进行数据更新操作,或者是需要跳转到同个App下的其他页面,这时需要通过事件和动作的机制来实现。单击按钮是触发一个事件,该Widget需要选用“widgetEventTemplate”模板,数据更新操作或者页面跳转操作是一个动作,该Widget需要选用“widgetActionTemplate”模板。

      widgetEventTemplate

      当自定义组件需要添加事件属性时,请选用该模板。

      widgetBridgeTemplate

      当自定义组件需要通过桥接器调用后台数据时,请选用该模板。

      widgetPageMacroTemplate

      当需要使用页面宏来存储变量时,请选用该模板。

    5. 在“下载组件模板”弹出框中,设置标签页组件名称为“TabsWidget”,单击“保存”。同样基于widgetVueTemplate模板下载,设置详情展示组件名称为“DisplayWidget”。

      若选择“下载原始模板”,下载到本地的包中组件名称不会被修改。

  2. 将下载到本地的Widget包进行解压,认识组件结构。

    本章节以下载的TabsWidget组件为例,说明组件包的文件结构及各文件的功能。

    表2 组件文件结构

    文件名

    文件说明

    TabsWidget.js

    组件逻辑文件,整个Widget的渲染核心JS,在组件编辑状态和页面最终的发布运行态都会被加载执行。主要包含的预置API说明请参见表3

    TabsWidget.editor.js

    组件属性定义文件,负责组件在编辑状态时需要渲染的界面和逻辑。“*.editor.js”只在组件编辑状态被加载,主要包含:

    • propertiesConfig方法:主要负责组件配置页面中右侧的属性配置逻辑。
    • create方法:仅在组件首次被创建时调用一次。

    TabsWidget.css

    组件的样式文件,在该文件中编写组件的 CSS 样式。

    TabsWidget.ftl

    组件DOM结构文件,需要在服务端提前渲染的部分可以写在此文件中,相当于HTML文件,负责样式展示。

    packageinfo.json

    组件的元数据描述文件。

    • widegtApi name:组件的名称。
    • widgetDescription:组件的描述信息。
    • authorName: :组件的作者信息。
    • localFileBasePath:组件本地调测路径。
    • i18n:指定组件的国际化资源文件(本例模板中未体现)。
    • requires:依赖的库名称和版本号。
    • width:在绝对布局高级页面中,添加该组件时的默认宽度,单位为px,不填写默认为200px(本例模板中未体现)。
    • height:在绝对布局高级页面中,添加该组件时的默认高度,单位为px,不填写默认为200px(本例模板中未体现)。

    messages-zh/messages-en.json

    组件的国际化资源文件,用于配置多语言(本例模板中未体现)。

    表3 组件名.js中预置API说明

    分类

    API及说明

    组件实例预置API

    • init方法:主要包含组件渲染需要初始化数据的入口函数。
    • render方法:负责整个组件渲染的业务逻辑方法。
    • getConnectorProperties:获取桥接器属性的配置值。
    • getConnectorInstanceByName:通过桥接器的变量名称获取桥接器实例,其中“APIConnector”类型为String,表示桥接器的变量名称。
    • ConnectorIns.process(renderCbk, errCbk):通过桥接器实例调用process函数,主要作用为发起调用服务的请求和处理返回结果信息。
      • 在通过process函数发起请求前,需设置桥接器实例的requestParams属性为请求的参数,例如:ConnectorIns.requestParams = param;
      • 参数renderCbk,类型为Function,当返回结果信息后调用该函数,用于处理返回信息。
      • 参数errCbk,类型为Function,调用该函数来处理错误。
    • ConnectorIns.query(param):通过桥接器实例调用process函数,主要作用为发起调用服务的请求和处理返回结果信息,参数说明如下:
      • param:请求参数。
      • 其返回结果为Promise对象。
    • getProperties:用于返回该组件的自定义属性值。

      开发Widget时,可以给组件自定义属性,在开发界面可对这些属性进行配置,通过getProperties方法可返回自定义属性值。例如,var properties = thisObj.getProperties()。

    • getContainer:用于返回渲染该组件的容器dom节点。

      代码示例:var elem = thisObj.getContainer (),然后通过jquery去查询组件中某个dom节点时,可通过$("#id", elem)的方式来获取。

    • getWidgetBasePath:用于返回该组件静态资源的根路径。

      例如某个组件的静态资源路径为“https://10.10.10.1:12900/default/0000000000NABzEjpNIH/assets/bundle/widget/172a6056501-a6f8ce1f-2ed9-4a9a-b883-251aaac14e0a/v1591923270914/test0609.js”,执行thisObj.getWidgetBasePath()返回“https://10.10.10.1:12900/default/0000000000NABzEjpNIH/assets/bundle/widget/172a6056501-a6f8ce1f-2ed9-4a9a-b883-251aaac14e0a/v1591923270914” 。

    • getMessages:返回该组件国际化配置文件中定义的国际化文件内容。需要配置vue和vueI18n使用。

      例如开发组件时定义了messages-en.json和messages-zh.json国际化文件。thisObj.getMessages()返回的就是这两个文件中定义的国际化内容。

    • hideWidget:隐藏该组件的dom结构。在预览态调用该方法可以隐藏Widget。

      例如,执行thisObj.hideWidget()方法隐藏该组件的dom结构。

    • showWidget:显示该组件的dom结构。在预览态调用该方法可以展示Widget。

      例如,执行thisObj.showWidget()方法显示该组件的dom结构。

    • SITE_ROOT_PATH:为预置参数,用于获取当前站点URL地址的根路径。站点和应用是一对一的关系,当创建应用时,系统默认会创建并分配一个站点。

      假如,某个页面的URL地址为“https://10.10.10.1:12900/magno/render/cool__app_0000000000NABzEjpNIH/page1”,则使用SITE_ROOT_PATH获取的根路径为“/magno/render/cool__app_0000000000NABzEjpNIH”。

    • triggerEvent:用于触发事件,参数说明如下:
      • eventName:指定触发的事件名称。
      • {}:为事件触发时传递的参数赋值,例如{param: value}。

    Studio对象预置API

    • Studio.registerWidget:用来定义组件。
    • Studio.registerConnector:用来定义桥接器。
    • Studio.registerEvents:用于注册事件,只有通过此API注册后的事件才会在组件的事件列表中展现。参数说明如下:
      • thisObj:当前组件实例对象,指为该组件注册事件。
      • eventName:事件名称,应该与触发事件API中的第一个参数保持一致。
      • Event Label:事件标签名,在事件列表中展示的事件标题。
      • []:定义该事件触发时传递的参数模型,例如[{"name": "param"}] 。
    • Studio.registerAction:用来注册动作。只有通过此API注册后的事件才会在组件的动作列表中展现。参数说明如下:
      • thisObj:当前组件实例对象,指为该组件注册动作。
      • actionName:动作名称。
      • Action Label:动作标签名,在动作列表中展示的动作标题。
      • []:事件触发时传入的参数。
      • $.proxy(this.receiveActionCbk, this):该动作的回调函数,在回调函数中定义该动作的执行逻辑。
      • []:此参数在开发过程中置为空数组即可。
    • Studio.registerRouter:用来定义路由。
    • Studio.inReader:判断当前高级页面状态是开发态或预览态。“true”表示在预览态(即运行态),“false”表示在开发态。
    • StudioToolkit.getCatalogProperties():用于获取当前站点的元数据。

    HttpUtils工具类预置API

    平台内置了HttpUtils工具类,预置API如下:

    • HttpUtils.getCookie:用于获取某个cookie的值。

      代码示例:HttpUtils.getCookie()

    • HttpUtils.setCookie:用于设置cookie的值。

      代码示例:HttpUtils.setCookie("key","value")

    • HttpUtils.getI18n:返回一个Vue18n的实例,配合Vue和VueI18n使用。该Vue18n实例可以在new一个Vue实例时赋值为i18n参数。

      代码示例:HttpUtils.getI18n({locale: HttpUtils.getLocale(), messages: thisObj.getMessages()})

    • HttpUtils.getCsrfToken:通过ajax的方式去调用平台的接口时使用。如果使用平台桥接器的方式,平台会自动在请求header中添加csfr-token头。
      HttpUtils.getCsrfToken(function(csrfToken) {
        $.ajax({
          ….
          headers: {
             CS RF-Token: csrfToken
          },
        })
      })
    • HttpUtils.refreshToken:用于手动刷新页面的accesstoken,通常用在执行退出逻辑时,执行该方法刷新页面的accesstoken。
    • HttpUtils.getUrlParam:用于获取查询字符串中的参数。

      例如某个页面的URL为“https://10.10.10.1:12900/magno/render/cool__app_0000000000NABzEjpNIH/page1?param=1”, 通过执行HttpUtils.getUrlParam("param")返回该参数的值“1”。

    • HttpUtils.getLocalStorage:用于获取某个localStorage的值。

      代码示例:HttpUtils.getLocalStorage("key")

    • HttpUtils.setLocalStorage:用于设置某个localStorage的值。

      代码示例:HttpUtils.setLocalStorage("key","value")

  3. 编写TabsWidget组件DOM结构及逻辑。

    1. 在TabsWidget组件包“TabsWidget.js”文件中的render函数下,修改注册的Vue实例。
      示例代码如下所示:
      thisObj.vm = new Vue({
          el: $("#Tabswidget", elem)[0],
          data:{
              activeName: "phone",
              //定义页签栏中的所含项目
              tabs: [
                  {label:"手机",name:"phone"},
                  {label:"笔记本",name:"PC"},
                  {label:"平板",name:"pad"},
                  {label:"智慧屏",name:"HiSilicon"},
                  {label:"穿戴",name:"wearableDevice"}
              ]
          },
          methods:{
              //此函数在切换页签时触发,用于触发后续步骤中TabsWidget组件注册的切换页签事件
              handleClick: function () {
                  thisObj.triggerEvent("switchingTab", {param: this.activeName});
              }
          }
      });
    2. 在TabsWidget组件包“TabsWidget.ftl”文件中,修改DOM结构。
      示例代码如下所示:
      <div id="TabsWidget">
         <!-- 此处用到了Element提供的el-tabs组件  -->
         <el-tabs v-model="activeName" @tab-click="handleClick">
            <el-tab-pane
                    v-for="(tab, index) in tabs"
                    :key="index"
                    :label="tab.label"
                    :name="tab.name"
            ></el-tab-pane>
         </el-tabs>
      </div>

  4. 编写DisplayWidget组件DOM结构及逻辑。

    1. 在DisplayWidget组件包“DisplayWidget.js”文件中的render函数下,修改注册的Vue实例。
      示例代码如下所示:
      thisObj.vm = new Vue({
          el: $("#showtabs", elem)[0],
          data:{
              imgSrc: widgetBasePath + "img/phone.png",
              //定义信息展示组件中展示的图片路径信息
              sources: {
                  phone: widgetBasePath + "img/phone.png",
                  PC: widgetBasePath + "img/PC.png",
                  pad: widgetBasePath + "img/pad.png",
                  HiSilicon: widgetBasePath + "img/hisilicon.png",
                  wearableDevice: widgetBasePath + "img/wearableDevice.png"
              }
          },
          methods:{
              //此方法将在后续步骤中DisplayWidget组件注册的切换展示信息的动作中调用
              switchPic: function (param) {
                  this.imgSrc = this.sources[param];
              }
          }
      });
      • 上述代码中定义的展示图片文件可单击img.zip获取,下载后解压到DisplayWidget目录中即可正常使用。
      • 本段示例代码中widgetBasePath变量为组件包上传后的路径,在组件模板中已包含获取此变量的逻辑,在此直接使用即可(此例也展示了组件中如何引入本地图片的基本方法)。
    2. 在DisplayWidget组件包DisplayWidget.ftl文件中实现DOM结构。
      示例代码如下所示:
      <div id="showTabs">
         <img :src="imgSrc">
      </div>

  5. 注册、实现事件和动作。

    1. TabsWidget组件包“TabsWidget.js”文件中的init函数中注册页签切换的事件
      示例代码如下所示:
      if((typeof(Studio) != "undefined") && Studio)
      {
          var sendEventConfig = [{
              "name": "param"
          }];
          Studio.registerEvents(
              thisObj,
              "switchingTab",
              {"zh_CN": "切换标签", "en_US": "Switching Tab"},
              sendEventConfig
          );
      }
    2. DisplayWidget组件包“DisplayWidget.js”文件中的init函数中注册切换展示图片的动作
      示例代码如下所示:
      if((typeof(Studio) != "undefined") && Studio)
      {
          var receiveActionConfig = {
              "name": "param"
          };
          Studio.registerAction(
              thisObj,
              "switchingPicture",
              {"zh_CN": "切换图片", "en_US": "Switching Picture"},
              receiveActionConfig,
              $.proxy(thisObj.switchingPicture, thisObj),
          );
      }

      DisplayWidget组件包“DisplayWidget.js”文件中的组件示例中(即与init和render方法在同级作用域)实现上述注册的动作,示例代码如下所示:

      switchingPicture: function (event) {
          if (event && event.eventParam) {
              this.vm.switchPic(event.eventParam.param);
          }
      }

      “DisplayWidget.js”文件中第一行代码“var DisplayWidget = StudioWidgetWrapper.extend();”,其含义为新建的自定义组件继承于AstroZero平台定义的StudioWidgetWrapper类,此为开发规范,基于此类开发的自定义组件可以使用平台提供的如下方法:

      • var widgetProperties = thisObj.getProperties(); :获取组件的自定义属性配置值。
      • var elem = thisObj.getContainer(); :获取组件的DOM元素。
      • var connectorProperties = thisObj.getConnectorProperties(); :获取组件的桥接器属性配置值。

  6. 定义组件依赖库及组件在绝对布局中默认尺寸。

    本节开发的示例组件TabsWidget依赖Vue和Element库,DisplayWidget依赖Vue库。所依赖的Vue库已在之前选择的组件模板“widgetVueTemplate”中定义,这里只需要在TabsWidget组件包的packageinfo.json文件中定义所依赖的Element库即可。

    1. 查询AstroCanvas预置库信息,本例以查询库“Element”为例。

      在AstroCanvas界面我的资产 > 我的库中,搜索所需库“Element”,单击,查看库ID和版本号信息。

      本例中查询的Element库ID为“global_Element”,库最新版本号为“101.0.8”。

      图2 查看库详情
      图3 查看库ID和版本
    2. 修改TabsWidget组件包中“packageinfo.json”文件的requires、width、height属性。
      示例代码如下所示:
      "requires": [
          {
            "name": "global_Vue",
            "version": "100.7"
          },
          {
            "name": "global_Element",
            "version": "101.0.8"
          }
      ],
      "width": "900",
      "height": "55",
    3. DisplayWidget组件只依赖Vue库,且在下载时选择的widgetVueTemplate组件模板,所依赖的Vue库已在模板中定义,本例无需修改,只需修改width、height属性。
      示例代码如下所示:
      "width": "900",
      "height": "560",

  7. 将组件的全部文件重新打成zip包(请直接打包,不要在文件夹外打包)。

网页定制开发常见问题

更多常见问题 >>
  • 华为云云市场沃可加WorkPlus Lite企业级即时通讯平台,私有化部署,开通镜像即用,10分钟上手,可定制客户端,打造自有IM,彰显企业品牌实力

  • SFS的常见问题解答。

  • 预热的任务一直在处理中的可能原因有如下几种:可能当前CDN处于预热高峰期,您的预热任务正在排队中。缓存预热的时候CDN要回源请求资源,会占用源站带宽。当您要执行大批量文件预热时,可能会导致您的源站带宽资源被占满,建议:预热时请尽量分批次执行。您可以在访问量低的时间(如夜间)进行预热。升级您的源站带宽。

  • 本文为您解答华为云云市场按需付费镜像常见问题。

  • 包年包月镜像是基于按需镜像包装出的预付费套餐,一个包年包月镜像同一时间只能用于一台云服务器。包年包月镜像支持续费,在到期前用户可以选择续费继续使用。如果到期不对镜像续费,而云服务器继续使用,请在到期前及时更换系统,否则镜像将以按需的方式开始计费。

  • 云速邮箱常见问题解答,包括企业邮箱登陆、邮件发送和接收、域名注册和解析、手机客户端设置、垃圾邮件设置等等,你想要的问题答案,都在这里,还可免费试用云速邮箱30天,帮助企业轻松上云!