Files
dioxus/packages/playwright-tests/default-features-disabled/src/main.rs
T
Evan Almloff 8c866b783d Remove default features when fullstack is enabled and one platform is enabled in the default features (#3925)
* Don't enable default features when only either the server or client is enabled
2025-04-07 16:19:48 -07:00

43 lines
1016 B
Rust

// This test asserts that the client feature is disable on the server build by the cli
// even if it is set as a default feature
#![allow(non_snake_case)]
use dioxus::prelude::*;
fn main() {
launch(app);
}
fn app() -> Element {
let server_features = use_server_future(get_server_features)?.unwrap().unwrap();
let mut client_features = use_signal(Vec::new);
use_effect(move || {
client_features.set(current_platform_features());
});
rsx! {
div {
"server features: {server_features:?}"
}
div {
"client features: {client_features:?}"
}
}
}
fn current_platform_features() -> Vec<String> {
let mut features = Vec::new();
if cfg!(feature = "web") {
features.push("web".to_string());
}
if cfg!(feature = "server") {
features.push("server".to_string());
}
features
}
#[server]
async fn get_server_features() -> Result<Vec<String>, ServerFnError> {
Ok(current_platform_features())
}