我使用了反引号语法,以便使用Javascript生成一些Java代码:
Console.Write("Enter VillainId: ");
// asks to user input
while (!int.TryParse(Console.ReadLine(), out VillainId))
// while the conversion is not successfull
{
Console.WriteLine("You need to enter a valid Villain Id!");
Console.Write("Enter VillainId: ");
// asks for user to input valid data
}
但是,当body为null时,生成的代码包含3-4个空行然后 “int responseCode ..”行。 我已经尝试将body为true的部分提取到一个单独的常量中,或者在语句中移动``作为第一个并且它们都不起作用。有什么建议?
提前致谢!
答案 0 :(得分:0)
也许如果你正确检查了身体的var,例如:
typeof body == "undefined" ? `con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(${JSON.stringify(body)});
wr.flush();
wr.close();` : ``
将返回以下字符串:
"con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(${JSON.stringify(body)});
wr.flush();
wr.close();"
不仅使用body ? "string" : ""
,使用body的var进行一些操作。 (例如body == ""
或typeof body == "undefined"
)