Yew错误 – 只允许使用一个html根元素

我在Yew库的组件机制中遇到了一个问题。如果我在主模型的html宏中加入任何其他html代码,编译器就会抱怨 “只允许有一个html根元素”。

我的结构如下。

main.rs

impl Component for Model {
    // ...

    fn view(&self) -> Html<Self> {
        html! {
            <Navigation />
            <p>{ "Hello World!" }</p>
        }
    }
}

componentsnavigation.rs

impl Component for Navigation {
    // ...

    fn view(&self) -> Html<Self> {
        html! {
            <nav class=("uk-navbar-container","uk-padding","uk-padding-remove-bottom","uk-padding-remove-top"), uk-navbar="">
                // ...
            </nav>
        }
    }
}

我怀疑html宏在html标签周围添加了一个-tag或整个index.html,从而导致 “双 “html标签。但是,如何避免这种情况的发生,或者说我在使用组件的时候忽略了什么?

解决方案:

编译器的抱怨是关于yew html! 宏必须有一个元素包围一切。

所以错误的解决方法是简单地添加一个包装元素,就像这样。

main.rs

impl Component for Model {
    // ...

    fn view(&self) -> Html<Self> {
        html! {
            <div>
                <Navigation />
                <p>{ "Hello World!" }</p>
            </div>
        }
    }
}

它不一定是一个 div它可以是任何html元素。

本文来自投稿,不代表实战宝典立场,如若转载,请注明出处:https://www.shizhanbaodian.com/40698.html

(0)
上一篇 13小时前
下一篇 13小时前

相关推荐

发表评论

登录后才能评论