diff --git a/packages/cli/src/server/mod.rs b/packages/cli/src/server/mod.rs index 3f9510839..bf6cb1684 100644 --- a/packages/cli/src/server/mod.rs +++ b/packages/cli/src/server/mod.rs @@ -47,8 +47,13 @@ async fn setup_file_watcher Result + Send + 'static>( for path in &e.paths { // if this is not a rust file, rebuild the whole project - if path.extension().and_then(|p| p.to_str()) != Some("rs") { + let path_extension = path.extension().and_then(|p| p.to_str()); + if path_extension != Some("rs") { needs_full_rebuild = true; + // if backup file generated will impact normal hot-reload, so ignore it + if path_extension == Some("rs~") { + needs_full_rebuild = false; + } break; }