我正在学习 Rust(来自 Javascript),并且在 Rust 中我尝试创建一个基于组件的 UI 模板。这是我可以在 Rust 游乐场中重现的最小示例。
我有一个枚举向量。我想添加将返回一组新向量的组件。该组件从不是引用的成员函数返回一个向量。
let _new_children = match new_view.unwrap() {
View::View(children) => children, // reference &Vec<View>
View::Render(ref component) => component.render(), // struct Vec<View>
};
let _new_children = match new_view.unwrap() {
View::View(children) => children,
View::Render(ref component) => &component.render(), // temporary value dropped while borrowed
};
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?我是否需要重写函数检查两个向量之间差异的方式(itertools有一个 zip_longest 方法,我也使用该方法)。