ACF: using two loops, the_field returns field content from another loop

I’m not fun of helper functions so I would write it like this:

$args=array(
    'post_type' => 'post',
    'posts_per_page' => '20',
    'post_status' => 'publish',
    'order'=>'DESC',
    'orderby'=>'ID',   
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
    while ( $query->have_posts() ) {
        $query->the_post();

        $current_id = $post->ID;
       echo the_field('field1', $current_id);

    }
    wp_reset_postdata();
} else {
    // no post
}