@@ -189,8 +189,7 @@ pub fn Editor(props: &Props) -> Html {
189189 rows="8"
190190 placeholder="Write your article (in markdown)"
191191 value={ update_info. body. clone( ) }
192- oninput={ oninput_body} >
193- </textarea>
192+ oninput={ oninput_body} />
194193 </fieldset>
195194 <fieldset class="form-group" >
196195 <input
@@ -202,34 +201,30 @@ pub fn Editor(props: &Props) -> Html {
202201 { onkeypress}
203202 { onkeyup} />
204203 <div class="tag-list" >
205- {
206- if let Some ( tag_list) = & update_info. tag_list. clone( ) {
207- html! { for tag_list. iter( ) . map( |tag| {
208- let onclick_remove = {
209- let tag = tag. clone( ) ;
210- let update_info = update_info. clone( ) ;
211- Callback :: from( move |_| {
212- // Remove a tag
213- let mut info = ( * update_info) . clone( ) ;
214- if let Some ( tag_list) = & mut info. tag_list {
215- tag_list. retain( |t| t != & tag) ;
216- }
217- update_info. set( info) ;
218- } )
219- } ;
220- html! {
221- <span class="tag-default tag-pill" >
222- <i class="ion-close-round"
223- onclick={ onclick_remove} >
224- </i>
225- { & tag }
226- </span>
204+ { for update_info. tag_list. as_ref( ) . map( |tags| {
205+ tags. iter( ) . map( |tag| {
206+ let onclick_remove = {
207+ let tag = tag. clone( ) ;
208+ let update_info = update_info. clone( ) ;
209+ Callback :: from( move |_| {
210+ // Remove a tag
211+ let mut info = ( * update_info) . clone( ) ;
212+ if let Some ( tag_list) = & mut info. tag_list {
213+ tag_list. retain( |t| t != & tag) ;
227214 }
228- } ) }
229- } else {
230- html! { }
215+ update_info. set( info) ;
216+ } )
217+ } ;
218+ html! {
219+ <span class="tag-default tag-pill" >
220+ <i class="ion-close-round"
221+ onclick={ onclick_remove} >
222+ </i>
223+ { & tag }
224+ </span>
231225 }
232- }
226+ } )
227+ } ) . into_iter( ) . flatten( ) }
233228 </div>
234229 </fieldset>
235230 <button
0 commit comments