JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://underscorejs.org/underscore-min.js"></script>
<script src="https://mobiledemo.jaspersoft.com/jasperserver-pro/client/visualize.js"></script>

<select id="productFamilySelector"></select>
<br>
<div id="App"></div>

React

function RenderVisualize () {
  React.useEffect(function () {
let reportUri = "/public/Samples/Reports/Cascading_Report_2_Updated";

visualize({
    auth: {
        name: "joeuser",
        password: "joeuser",
        organization: "organization_1"
    }

}, function (v) {
    let inputControls = v.inputControls({
        resource: reportUri,
        success: renderInputControls
    });

    let report = v.report({
        resource: reportUri,
        container: "#container"
    });

    $("#productFamilySelector").on("change", function () {
        report.params({
            "Product_Family": [$(this).val()]
        }).run();
    });
});

function renderInputControls(data) {
    let productFamilyInputControl = _.findWhere(data, {
        id: "Product_Family"
    });
    let select = $("#productFamilySelector");
    _.each(productFamilyInputControl.state.options, function (option) {
        select.append("<option " + (option.selected ? "selected" : "") + " value='" + option.value + "'>" + option.label + "</option>");
    });
}

  }, [])

  return (
    <div id='container'></div>
  )
}

ReactDOM.render(<RenderVisualize />, document.querySelector("#App"))