Index: src/wp-includes/admin-bar.php
===================================================================
--- src/wp-includes/admin-bar.php	(revision 51652)
+++ src/wp-includes/admin-bar.php	(working copy)
@@ -696,6 +696,7 @@
  *
  * @since 3.1.0
  * @since 5.5.0 Added a "View Post" link on Comments screen for a single post.
+ * @since 5.9.0 Added a placeholder for block editor to update "View Post" link when publishing post.
  *
  * @global WP_Term  $tag
  * @global WP_Query $wp_the_query WordPress Query object.
@@ -725,29 +726,42 @@
 		}
 
 		if ( ( 'post' === $current_screen->base || 'edit-comments' === $current_screen->base )
-			&& 'add' !== $current_screen->action
 			&& ( $post_type_object )
 			&& current_user_can( 'read_post', $post->ID )
 			&& ( $post_type_object->public )
 			&& ( $post_type_object->show_in_admin_bar ) ) {
-			if ( 'draft' === $post->post_status ) {
+
+			if ( 'add' === $current_screen->action && use_block_editor_for_post( $post ) ) {
+				// Add a hidden placeholder when creating a new post with the block editor.
 				$preview_link = get_preview_post_link( $post );
 				$wp_admin_bar->add_node(
 					array(
-						'id'    => 'preview',
+						'id'    => 'view',
 						'title' => $post_type_object->labels->view_item,
 						'href'  => esc_url( $preview_link ),
-						'meta'  => array( 'target' => 'wp-preview-' . $post->ID ),
+						'meta'  => array( 'class' => 'hidden' ),
 					)
 				);
-			} else {
-				$wp_admin_bar->add_node(
-					array(
-						'id'    => 'view',
-						'title' => $post_type_object->labels->view_item,
-						'href'  => get_permalink( $post->ID ),
-					)
-				);
+			} elseif ( 'add' !== $current_screen->action ) {
+				if ( 'draft' === $post->post_status ) {
+					$preview_link = get_preview_post_link( $post );
+					$wp_admin_bar->add_node(
+						array(
+							'id'    => 'preview',
+							'title' => $post_type_object->labels->view_item,
+							'href'  => esc_url( $preview_link ),
+							'meta'  => array( 'target' => 'wp-preview-' . $post->ID ),
+						)
+					);
+				} else {
+					$wp_admin_bar->add_node(
+						array(
+							'id'    => 'view',
+							'title' => $post_type_object->labels->view_item,
+							'href'  => get_permalink( $post->ID ),
+						)
+					);
+				}
 			}
 		} elseif ( 'edit' === $current_screen->base
 			&& ( $post_type_object )
