问题描述
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id='book-items'></div>
但是在将单元转回字符串时失败了。
new ModifierVisitor<Object>() {
public Visitable visit(ExpressionStmt expStmt,Object arg) {
Expression exp = expStmt.getExpression();
if (exp.isMethodCallExpr()) {
// My other logic goes here
return new LineComment(expStmt.toString());
}
}
}
-
因为它表明您可以用另一个语句替换“语句”,所以我尝试了另一种方法来替换该语句并使用“空语句”。它对我有用,但输出看起来不太好,因为它留下了额外的 ';'在注释行之后。
-
第三次我尝试更深入,而不是替换语句,而是尝试用注释替换表达式。如SO - Javaparser comment expression中所述,这也失败了。
知道如何解决这个问题吗?
解决方法
我尝试了一种变通方法,但感觉不是一个好的解决方案,但现在给了我预期的结果:
BlockStmt blockStmt = (BlockStmt) expStmt.getParentNode().get();
blockStmt.getStatement(blockStmt.getStatements().indexOf(expStmt) + 1).setLineComment(expStmt.toString());
return null;