fix: dx create not work (#1709)

This commit is contained in:
YuKun Liu 2023-12-11 11:27:55 -08:00 committed by GitHub
parent 972235bd6f
commit 695bf009d1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -42,34 +42,36 @@ async fn main() -> anyhow::Result<()> {
set_up_logging(); set_up_logging();
let bin = get_bin(args.bin)?; let bin = get_bin(args.bin);
let _dioxus_config = DioxusConfig::load(Some(bin.clone())) if let Ok(bin) = &bin {
let _dioxus_config = DioxusConfig::load(Some(bin.clone()))
.map_err(|e| anyhow!("Failed to load Dioxus config because: {e}"))? .map_err(|e| anyhow!("Failed to load Dioxus config because: {e}"))?
.unwrap_or_else(|| { .unwrap_or_else(|| {
log::warn!("You appear to be creating a Dioxus project from scratch; we will use the default config"); log::warn!("You appear to be creating a Dioxus project from scratch; we will use the default config");
DioxusConfig::default() DioxusConfig::default()
}); });
#[cfg(feature = "plugin")] #[cfg(feature = "plugin")]
PluginManager::init(_dioxus_config.plugin) PluginManager::init(_dioxus_config.plugin)
.map_err(|e| anyhow!("🚫 Plugin system initialization failed: {e}"))?; .map_err(|e| anyhow!("🚫 Plugin system initialization failed: {e}"))?;
}
match args.action { match args.action {
Translate(opts) => opts Translate(opts) => opts
.translate() .translate()
.map_err(|e| anyhow!("🚫 Translation of HTML into RSX failed: {}", e)), .map_err(|e| anyhow!("🚫 Translation of HTML into RSX failed: {}", e)),
Build(opts) => opts Build(opts) if bin.is_ok() => opts
.build(Some(bin.clone())) .build(Some(bin.unwrap().clone()))
.map_err(|e| anyhow!("🚫 Building project failed: {}", e)), .map_err(|e| anyhow!("🚫 Building project failed: {}", e)),
Clean(opts) => opts Clean(opts) if bin.is_ok() => opts
.clean(Some(bin.clone())) .clean(Some(bin.unwrap().clone()))
.map_err(|e| anyhow!("🚫 Cleaning project failed: {}", e)), .map_err(|e| anyhow!("🚫 Cleaning project failed: {}", e)),
Serve(opts) => opts Serve(opts) if bin.is_ok() => opts
.serve(Some(bin.clone())) .serve(Some(bin.unwrap().clone()))
.await .await
.map_err(|e| anyhow!("🚫 Serving project failed: {}", e)), .map_err(|e| anyhow!("🚫 Serving project failed: {}", e)),
@ -81,8 +83,8 @@ async fn main() -> anyhow::Result<()> {
.config() .config()
.map_err(|e| anyhow!("🚫 Configuring new project failed: {}", e)), .map_err(|e| anyhow!("🚫 Configuring new project failed: {}", e)),
Bundle(opts) => opts Bundle(opts) if bin.is_ok() => opts
.bundle(Some(bin.clone())) .bundle(Some(bin.unwrap().clone()))
.map_err(|e| anyhow!("🚫 Bundling project failed: {}", e)), .map_err(|e| anyhow!("🚫 Bundling project failed: {}", e)),
#[cfg(feature = "plugin")] #[cfg(feature = "plugin")]
@ -107,5 +109,6 @@ async fn main() -> anyhow::Result<()> {
Ok(()) Ok(())
} }
_ => Err(anyhow::anyhow!(bin.unwrap_err())),
} }
} }