Adobe文档生成中同一行的条件逻辑无法识别模板标记



我有一个json字段,它要么不存在,要么设置为true。但在我的文件中,我希望它显示为";是";或";否";。我尝试了以下条件表达式((:

{% conditional-section expr(`my_field` = true) %}Yes{% end-section %}{% conditional-section expr(`my_field`!= true) %}No{% end-section %}

但是当我调用Adobe文档生成API时,我得到的PDF仍然有这些模板标记。由于某种原因,它没有被检测到。我怎样才能做到这一点?

我知道我在上面的评论中问了一个问题,但我想我现在可以试着回答这个问题了。所以现在没有办法说";如果一个值不存在或不存在并且等于yes"有几种方法可以处理此问题,但我认为最简单的方法是更改数据。需要明确的是,我并不是要更改数据库或其他任何内容,但请记住,在调用我们的API之前,您可以对数据进行一些按摩。因此,如果my_field的缺失意味着是的,我会做这样的事情(JavaScript(:

if(!mydata.my_field) {
mydata.my_field = 'yes';
}

然后你可以做这样的事情:

{% conditional-section expr(my_field = "yes") %}
Yes
{% end-section %}
{% conditional-section expr(my_field = "no") %}
No
{% end-section %}

然而,这将不在同一条线上。正如我所说,这是一个众所周知的问题。如果你需要它,再次,我会使用先按摩你的数据的想法。你可以这样做(同样是JavaScript,但可以用任何语言(:

if(!mydata.my_field) {
mydata.my_field = 'yes';
}
if(mydata.my_field === 'yes') mydata.my_field_value = 'Yes';
else mydata.my_field_value = 'No';

我所做的只是,根据my_field的值,设置另一个变量。在您的Word模板中,只需使用{{my_field_value}}就可以简化更多

由于文档生成非常灵活,您有多种不同的方法来解决问题。

我发现这对我来说很有效:

{{my_field ? "Yes" : "No"}}

最新更新