Components / ExpressionEditor

ExpressionEditor

An expression in several lines, with the fields, functions and operators that go in it and a check as it changes.

Example

The component itself, running in WebAssembly, beside its code in a playground. Try it.

Code

use ravenrs::prelude::*;

fn expression_editor() -> impl View {
    let expression = State::new("[Quantity] * [UnitPrice]".to_owned());
    ExpressionEditor::new(expression.binding())
        .field(FilterField::new("Quantity", "Quantity", FilterFieldKind::Number))
        .field(FilterField::new("UnitPrice", "Unit price", FilterFieldKind::Number))
        .parameter(FilterField::new("MinTotal", "Least total", FilterFieldKind::Number))
}

Open in the playground, with every example →

Full API of ExpressionEditor →