diff --git a/demo/src/pages/grid/mod.rs b/demo/src/pages/grid/mod.rs
index 8b308e9..4897b79 100644
--- a/demo/src/pages/grid/mod.rs
+++ b/demo/src/pages/grid/mod.rs
@@ -69,7 +69,7 @@ pub fn GridPage() -> impl IntoView {
"7"
"123"
"123"
- "1234"
+ "1234"
"567"
"567"
@@ -85,7 +85,7 @@ pub fn GridPage() -> impl IntoView {
"7"
"123"
"123"
- "1234"
+ "1234"
"567"
"567"
diff --git a/src/grid/grid_item.rs b/src/grid/grid_item.rs
index 84e1df6..3fef57c 100644
--- a/src/grid/grid_item.rs
+++ b/src/grid/grid_item.rs
@@ -3,7 +3,7 @@ use leptos::*;
#[component]
pub fn GridItem(
- #[prop(default = MaybeSignal::Static(1u16), into)] span: MaybeSignal,
+ #[prop(default = MaybeSignal::Static(1u16), into)] column: MaybeSignal,
#[prop(optional, into)] offset: MaybeSignal,
children: Children,
) -> impl IntoView {
@@ -12,22 +12,22 @@ pub fn GridItem(
let style = create_memo(move |_| {
let mut style = String::new();
let offset = offset.get();
- let span = i32::from(span.get());
+ let column = i32::from(column.get());
let x_gap = grid.x_gap.get();
if offset > 0 {
style.push_str(&format!(
"margin-left: calc((100% - {}px) / {} * {} + {}px);",
- (span + offset - 1) * x_gap,
- span + offset,
+ (column + offset - 1) * x_gap,
+ column + offset,
offset,
offset * x_gap
));
}
style.push_str(&format!(
"grid-column: span {} / span {};",
- span + offset,
- span + offset
+ column + offset,
+ column + offset
));
style
diff --git a/src/upload/mod.rs b/src/upload/mod.rs
index 7de0690..52c5019 100644
--- a/src/upload/mod.rs
+++ b/src/upload/mod.rs
@@ -1,7 +1,7 @@
mod theme;
mod upload_dragger;
-use crate::mount_style;
+use crate::{mount_style, utils::add_event_listener};
use leptos::*;
pub use theme::UploadTheme;
pub use upload_dragger::UploadDragger;
@@ -16,22 +16,32 @@ pub fn Upload(
) -> impl IntoView {
mount_style("upload", include_str!("./upload.css"));
+ let input_ref = create_node_ref::();
+ let trigger_ref = create_node_ref::();
+
+ trigger_ref.on_load(move |trigger_ref| {
+ let handle = add_event_listener(trigger_ref.into_any(), ev::click, move |_| {
+ if let Some(input_ref) = input_ref.get_untracked() {
+ input_ref.click();
+ }
+ });
+ on_cleanup(move || {
+ handle.remove();
+ });
+ });
+
let on_file_addition = move |files: FileList| {
if let Some(custom_request) = custom_request {
custom_request.call(files);
}
};
- let input_ref = create_node_ref::();
+
let on_change = move |_| {
if let Some(input_ref) = input_ref.get_untracked() {
if let Some(files) = input_ref.files() {
on_file_addition(files);
}
- }
- };
- let on_click = move |_| {
- if let Some(input_ref) = input_ref.get_untracked() {
- input_ref.click();
+ input_ref.set_value("");
}
};
@@ -72,7 +82,7 @@ pub fn Upload(
/>