google-app-maker - 有没有办法在页面加载事件和稍后的点击事件之间将非数据源数据存储在数组中?
问题描述
简短版:我想知道是否有一种方法可以在页面加载时间和某人在页面上执行其他操作的时间之间临时存储一组数据。除了 AppMaker 数据源之外,我还有来自几个来源的大约 35 个东西,其中只有一些我需要预先加载,但我想对所有这些进行评估,并且必须有比创建 35 个隐藏字段更好的方法在我的页面上只是为了保存每个数据点。
长版:
我正在使用 App Maker 开发一种工具来更新员工信息并使其在多个来源之间保持同步。这些来源是:
- 我们的 G Suite 管理员目录
- 应用程序中的员工数据源
- 来自第三方工具的信息,我可以通过 API 查看/更新
管理目录和数据源之间的匹配点是 ID——来自 Google 用户的唯一 ID,即使一个人的电子邮件地址发生更改,它也会保持不变。它作为字段存储在数据源中。
第三方和数据源之间的匹配点是员工电子邮件地址。
应用程序用户使用目录数据源选择器从准菜单页面中选择要更新的员工,然后在选择时加载 EditEmployee 页面。
页面的 onload 操作触发了一个脚本,该脚本仅加载页面上员工数据源中的字段,因为它们是我们希望主管/人力资源能够更新的内容:部门、职务、全职状态等。(员工数据源中还有很多其他信息,我们不希望他们直接更改,因此我们没有这些项目的可见字段。)
onload 操作还会启动一个服务器端脚本,该脚本从员工数据源中获取存储的 Google Id,并在 Admin Directory 中查找该用户以获取组织单位和其他一些 Google 特定数据。
我希望能够在后台保留所有 Google 用户数据,而不是在执行操作时再次调用 AdminDirectory。如果有一种方法可以创建一个等待该操作以便再次引用它的数组,那么它就可以在第三方工具中查找员工一次,而不必多个 API 调用。
有任何想法吗?
解决方案
确认!我是个假人!
答案是页面级别的自定义属性。
我在页面中添加了一个列表自定义属性,在 onload 脚本中,我从 Google 用户数据中创建了一个字符串数组,并将属性值设置为该数组。当我在同一页面上时,我可以随时从该属性中撤出,直到我清除它或重置内容。
推荐阅读
- node.js - 如何在查询中使用 firestore.FieldValue.serverTimestamp()
- linux - 如何将变量放在 grep 命令中进行搜索?
- javascript - 使用 JS/JQuery 获取 ASP.NET Webform TextBox 的值
- javascript - 数据表日期时间提取分钟并添加 CSS 类
- jmeter - 有没有办法识别发送 200 状态代码但重定向到显示 404 错误的页面的 http 请求
- azure-cosmosdb - 我可以获取 Cosmos DB 表中大量记录的所有记录的计数吗?
- pointers - go - 修改指向切片的指针不会修改原始指针
- java - 在视图之间导航后,组件未正确加载
- php - 使用没有数据库的身份验证登录
- node.js - Angular 前端不会立即更新