旋转节点,如何实现最小角度旋转?跪求跪求

用cc.tween(this.node).to(1,{angle:targetAngle}).start();
从0旋转到360或360到0.会转一圈,如何避免?

已解决
rotateTo(angle: number, time: number) {
if(Math.abs(angle - this.node.angle)<=180){
this.rotateDis = angle - this.node.angle;
}else{
this.rotateDis = -(angle - this.node.angle)/Math.abs(angle - this.node.angle) * (360-Math.abs(angle - this.node.angle))
}
this.rotateSpeed = this.rotateDis / time;
}

update(){
if (this.rotateDis != 0 && this.rotateSpeed != 0) {
var dis = this.rotateSpeed * dt;
if ((this.rotateDis - dis) * this.rotateDis < 0) {
dis = this.rotateDis;
}
this.rotateDis -= dis;
this.node.angle += dis;
this.node.angle = this.node.angle % 360;
if (this.rotateDis == 0 && this.node.angle < 0) {
this.node.angle += 360;
}
}
}