- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为了为我的 AppSync 解析器编写单元测试,我使用 VelocityJS 包来解析 sam 模板内的 VTL。但是,VTL 模板尚未完全解析。
代码在 AWS 上运行良好,错误的是单元测试。 https://github.com/shepherdwind/velocity.js
#if($util.isNullOrBlank($ctx.result.themePreferences))
#set($themePreverences = {})
$util.qr($themePreverences.put("darkMode", "DEFAULT"))
$util.qr($ctx.result.put("themePreferences", $themePreverences))
#end
$util.toJson($ctx.result)
当使用 let result = Velocity.parse(template, ctx);
时,结果是字符串 "$util.toJson($ctx.result)"
而不是$ctx.result
的 JSON 值。
IE:
{ "themePreferences": { "darkMode": "DEFAULT" } }
最佳答案
我认为解析问题的原因是 util 和 ctx/context 都是 AppSync 概念,而不是 VTL 概念。由于您使用的是第三方库,他们不知道这意味着什么,也无法替换它们。
您可能会发现 Amplify 的新模拟和测试工具很有帮助:https://aws-amplify.github.io/docs/cli-toolchain/quickstart?sdk=js#mocking-and-testing
如果上述内容不适合您的用例,还有其他第三方库可以很好地涵盖 AppSync 本地开发,值得一试。
关于javascript - 使用VelocityJS解析VTL时如何修复 "Unexpected token $ in JSON",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57465843/
如何在 VTL 中创建数组并将内容添加到数组中?另外如何通过索引检索数组的内容? 最佳答案 根据 Apache Velocity User Guide , 赋值的右侧可以是类型 变量引用 列表项 字符
我最近在一些 Velocity 代码中遇到了这两个变量: $!variable1 !$variable2 我对它们的相似性感到惊讶,所以我对代码的正确性产生了怀疑,并对找出两者之间的差异产生了兴趣。
如何从 Velocity 模板脚本 (VTL) 抛出用户定义的异常? 从我的速度脚本中,我需要根据条件抛出异常,以便调用者可以捕获异常并向最终用户呈现有用的错误消息。 例如。 #if($passwor
我想避免在我的 vtl 模板中重复某些声明,并在 vtl 解析器之间共享它们。 假设我在 mapping_templates/shared.vtl 中有一个示例字典 #set($sample_ma
当我尝试在 VTL 响应模板中返回 #foreach 循环时,即使我有 116 个项目,它也不会返回超过 101 个。为了测试,我创建了两个字段 items和 itemCount 并运行相同的 ES
(这是我的模型方案: { "$schema": "http://json-schema.org/draft-04/schema#", "title": "QuestionsModel", "type"
我在我的一个项目中使用 Apache VTL。该项目使用 Apache Velocity 从 JSON 数据生成 PDF。我有一个用例,其中 JSON 是一个 JSON 数组。示例 JSON 如下。
我正在为 AWS API Gateway 集成响应编写映射模板。我想向返回我的 Lambda 函数的 JSON 对象添加一个键/值对。 我的函数返回一些这样的 JSON: { "id": "123
我正在使用 $util.autoId() 并想知道是否有一种模式可以执行 update_or_create()(类似于 Django 的模式)使用 VTL 或者我是否应该将 Resolver 链接到
我有一个API Gateway,它访问S3存储桶以获取内容列表,下面的代码工作并生成一个XML输出。它返回如下的XML结构。但是,当我尝试使用以下代码将其转换为JSON时,我没有得到任何结果:。$in
我是一名优秀的程序员,十分优秀!