This is based on findings of Andrew N from https://community.skuid.com/skuid/topics/automatically-refresh-render-conditions-on-component?utm_so....
When a queue has a render condition of "Model Property" set to "Has Data Rows", the queue does not update it's visibility as data in the model changes.
Notes
1) Using Brooklyn 9.3.1
2) When the queue is hidden, using the render API on the component does not redraw the component
3) If the queue is visible and you call the render API on it, the editor-contents is removed but the queue header remains.
Steps to reproduce:
1) Create page using XML below
2) Preview page
3) Click "Empty Accounts" button
Expected Behavior = Actual Behavior
Queue and table are removed from page
4) Click "Load Accounts"
Expected Behavior
Queue and Table are visible
Actual Behavior
Queue is not visible, table is
5) In page composer, set "Accounts" model to NOT "Load Model data on page load" and save
6) Preview
Expected Behavior = Actual Behavior
Queue and Table are NOT visible
7) Click "Load Accounts"
Expected Behavior
Queue and Table are visible
Actual Behavior
Queue is NOT visible, table is
Sample Page XML
When a queue has a render condition of "Model Property" set to "Has Data Rows", the queue does not update it's visibility as data in the model changes.
Notes
1) Using Brooklyn 9.3.1
2) When the queue is hidden, using the render API on the component does not redraw the component
3) If the queue is visible and you call the render API on it, the editor-contents is removed but the queue header remains.
Steps to reproduce:
1) Create page using XML below
2) Preview page
3) Click "Empty Accounts" button
Expected Behavior = Actual Behavior
Queue and table are removed from page
4) Click "Load Accounts"
Expected Behavior
Queue and Table are visible
Actual Behavior
Queue is not visible, table is
5) In page composer, set "Accounts" model to NOT "Load Model data on page load" and save
6) Preview
Expected Behavior = Actual Behavior
Queue and Table are NOT visible
7) Click "Load Accounts"
Expected Behavior
Queue and Table are visible
Actual Behavior
Queue is NOT visible, table is
Sample Page XML
<skuidpage unsavedchangeswarning="yes" personalizationmode="server" useviewportmeta="true" showsidebar="true" showheader="true" tabtooverride="Account"> <models> <model id="Account" limit="100" query="true" createrowifnonefound="false" datasource="salesforce" sobject="Account" type=""> <fields> <field id="Name"/> <field id="CreatedDate"/> </fields> <conditions/> <actions/> </model> </models> <components> <pagetitle model="Account" uniqueid="sk-2MgEto-87"> <maintitle> <template>{{Model.labelPlural}}</template> </maintitle> <subtitle> <template>Home</template> </subtitle> <actions> <action type="multi" label="Load Accounts"> <actions> <action type="requeryModels" behavior="standard"> <models> <model>Account</model> </models> </action> </actions> </action> <action type="multi" label="Empty Accounts"> <actions> <action type="emptyModelData"> <models> <model>Account</model> </models> </action> </actions> </action> <action type="multi" label="Add New Record to Accounts"> <actions> <action type="createRow" model="Account" appendorprepend="prepend" defaultmodefornewitems="edit" affectedrows="all"/> </actions> </action> </actions> </pagetitle> <grid uniqueid="sk-2OuP5_-111"> <divisions> <division behavior="flex" minwidth="100px" ratio="1"> <components> <queue tagrendertype="template" searchbox="true" tokenizesearch="true" showsearchbydefault="true" uniqueid="sk-2MgHYI-106" model="Account" title="Accounts"> <rendertemplate>{{Name}}</rendertemplate> <interactions> <interaction type="tap"> <action type="updateIncludePanel" querystring="id={{Id}}"/> </interaction> </interactions> <renderconditions logictype="and"> <rendercondition type="fieldvalue" enclosevalueinquotes="true" fieldmodel="Account" sourcetype="modelproperty" nosourcerowbehavior="deactivate" sourceproperty="hasRows"/> </renderconditions> </queue> </components> </division> <division behavior="flex" verticalalign="top" minwidth="100px" ratio="1"> <components> <skootable showconditions="true" showsavecancel="false" searchmethod="server" searchbox="true" showexportbuttons="false" pagesize="10" createrecords="true" model="Account" mode="read" allowcolumnreordering="true" uniqueid="sk-2MgEto-88"> <fields> <field id="Name" hideable="true" allowordering="true" uniqueid="fi-2MgE0P-399" valuehalign="" type=""/> </fields> <rowactions/> <massactions usefirstitemasdefault="true"/> <views> <view type="standard"/> </views> <renderconditions logictype="and"> <rendercondition type="fieldvalue" enclosevalueinquotes="true" fieldmodel="Account" sourcetype="modelproperty" nosourcerowbehavior="deactivate" sourceproperty="hasRows"/> </renderconditions> </skootable> </components> </division> </divisions> <styles> <styleitem type="background" bgtype="none"/> </styles> </grid> </components> <resources> <labels/> <css/> <javascript/> </resources> <styles> <styleitem type="background" bgtype="none"/> </styles> </skuidpage>
Barry Schnell, Champion