检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在AstroZero中自定义高级页面组件(widget)时,修改了JS文件,修改部分不生效? 问题描述 修改自定义组件widget的JS文件后,修改部分未生效。 解决方法 自定义组件(widget)上传新的版本后,需要在“页面设置”中,对插件进行升级更新。
如何通过JS代码,实现页面与后台接口间的交互 使用说明 如果您擅长编写JS代码,可以不使用事件编排器中的内置动作,直接通过手动编写JS代码实现事件的逻辑功能。
通过在线编辑器完善组件。 测试结果基本满足预期,但是由于图片尺寸不同,有些图片未能完全展示,还需优化。本例中向您介绍AstroZero平台提供的,在线组件开发工具。 单击组件详情页中的“编辑”,在跳转到的“组件编辑”页面进行组件代码开发,完成后单击“发布”,即可完成组件更新。
标准页面中预置的API 在开发标准页面时,可以通过编写JS代码,来实现页面组件与后台接口之间的交互。如图1所示,在编写JS代码时,可直接使用系统预置的API。 系统预置的API代码结构样例如下,提供事件上下文context,用于封装常用的对象及API。
从左侧“动作”区,设置“内置动作”或“自定义动作”,自定义动作需自定义JS代码逻辑,可单击代码区域右侧的,最大化自定义JS代码页面。 图1 页面自定义JS代码 在左侧模板代码中,单击服务编排或脚本左侧的,复制代码到右侧代码编辑区域,即可出现系统预置的经典接口。
目录结构如图3所示,其中userLogin.js文件是写vue业务逻辑的代码,userLogin.ftl用于写html代码,userLogin.css用于写样式代码,userLogin.editor.js以及packageinfo.json是配置文件。
组件 在开发自定义组件时,需要定义“组件名.js”文件,该文件为组件逻辑文件,是整个组件的渲染核心JS,在组件编辑状态和页面最终的发布运行态都会被加载执行。主要包含的预置API说明,请参见表1。
选择“自定义动作”,在右侧事件定义区域,输入实现事件逻辑的JS代码,也可从左侧拖动相关模板至右侧事件定义区域,单击“创建”。 内置JS事件说明及使用方法,请参见如何通过JS代码,实现页面与后台接口间的交互。
模块管理机制类似Node.js,但因为平台是基于数据库存放脚本,没有目录与路径的概念,所以下面的module管理只是一个简化版本的Node.js模块管理,也不支持npm的整套机制。 脚本文件和模块是一一对应的,每个脚本被视为一个独立的模块。
本章节以开发网站中常用的标签切换页面为例,向您介绍如何基于组件模板在线开发组件。参考消费者业务网站(如图1所示),页面中主要包含标签栏和详情展示模块两部分,可以通过切换标签来控制详情展示模块中的展示内容。
如下加粗代码所示,“widget_demo_property.editor.js”中分别定义了text、 checkbox以及select类型的三个属性参数。
例如,查看组件editor.js文件中model值为“SingleRepireDataViewModel”,查看“折柱图数据桥接器”和“柱状图和折线图数据桥接器”的“packageinfo.json”文件中model值同样为“SingleRepireDataViewModel”。
客户端根据密钥生成身份凭证,服务端使用密钥进行解析,信息是经过数字签名的,因此可以被验证和信任。JWT鉴权模式一般用于AstroZero内部服务之前的相互访问。 操作步骤 参考登录经典应用设计器中操作,登录经典版应用设计器。
若勾选“合并并压缩资源”,会对所有高级页面涉及的css和js文件进行合并及压缩,使用单页面性能检查功能时,不要勾选该选项。 图1 关闭“合并并压缩资源”属性 设置完成后,单击,并单击,释放锁。
配置文件中的名称,用于后台元数据存储、解析等。 zip包名应该与name值保持一致,例如此处name为img-button,zip包名必须为img-button.zip。 title 组件别名 建议简短并能展示组件特性,长度在100字符以内。
站点设置 合并并压缩资源:勾选后,在发布该应用时,对应用中所有高级页面涉及的css和js文件进行合并及压缩,这样可以有效降低运行时服务器压力,但从终端浏览器首次访问该站点页面时,访问时间会稍微增加。 资源延迟加载:勾选后,在body标签中加载资源。
输入自定义JS代码,调用库中的方法获取git仓库的地址。 关于fetch的使用方法及介绍,请参考Fetch API。
添加库扩展AstroZero标准页面功能 如果您希望使用第三方库文件,而当前系统中不存在该库,您可以通过上传,新增该JS/CSS库,并在页面中设计并使用该库,实现引入第三方库的功能。本节将介绍如何引入并使用第三方库的具体操作步骤。
标准页面中的组件是基于Vue.js的通用基础组件,常用于管理端表格表单类的页面开发,如布局容器、数据容器、输入、显示、按钮等。
以修改widgetVueTemplate.js文件中,name变量值为“AppCube Studio”为例,向您介绍如何在线编辑组件。 图5 在线编辑组件示例 修改完成后,单击页面右上角的,进入更新组件页面。 单击“更新”,返回组件详情页面。