0

我正在使用 Groovy SimpleTemplateEngine 在运行时动态设置值。我也在字符串中使用三元运算符。三元运算符内的变量的值不会更新。有人可以帮助如何实现这一目标吗?

File f = new File("test.txt");
        SimpleTemplateEngine engine = new SimpleTemplateEngine();
        Template template = engine.createTemplate(f);
        def refMap = [:]
        refMap["condition1"] = "true";
        refMap["acctNbr"] = "1234567890";
        refMap["value"] = "abc";
        println template.make(refMap).toString();

test.txt

<acctNbr13>${acctNbr}</acctNbr13>
${(
Boolean.parseBoolean(condition1)
?
'''
<test>${value}</test>
'''
:
''
)}
4

1 回答 1

0

我怀疑 String 已经代表了替换的值,并且不会自行解析。

你可以换吗

 '''
 <test>${value}</test>
 '''

 '<test>' + value + '</test>'
于 2019-01-07T16:48:56.133 回答