I am trying to insert simple text to my custom form (not system.xml).
There is a UI component for Form or DynamicRow to show static text: https://devdocs.magento.com/guides/v2.3/ui_comp_guide/components/ui-text.html
How I try to use it:
...
</field>
<text name="my_text">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="visible" xsi:type="boolean">true</item>
<item name="label" xsi:type="string">My Text</item>
</item>
</argument>
<settings>
<label translate="false">My Text</label>
<addBefore translate="false">My Text</addBefore>
<addAfter translate="false">My Text</addAfter>
</settings>
</text>
<field name="i_am_next_field" formElement="textarea">
...
It seems incorrect way to use this ui component. How to insert text to my form?
2 Answers 2
Step 1) Ui component XML
-------------------
-------------------
<field name="my_text">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="formElement" xsi:type="string">input</item>
<!-- Assigning a new template -->
<item name="elementTmpl" xsi:type="string">Company_MyModule/form/element/mytext</item>
</item>
</argument>
</field>
-------------------
-------------------
step 2) /app/code/Company/MyModule/view/adminhtml/web/template/form/mytext.html
<p> My text goes here ................</p>
-
It achieves the goal to show text. But this approach does not use Text Ui Component. My question was how to use built-in Text component. It seems underdone functionality :(Ruslan Mavlyanov– Ruslan Mavlyanov2019年12月12日 11:45:04 +00:00Commented Dec 12, 2019 at 11:45
You may try this.
<fieldset name="MyFieldsetName">
--------------------------
--------------------------
<field name="my_text">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">text</item>
<item name="label" xsi:type="string" translate="true">My Text</item>
<item name="formElement" xsi:type="string">input</item>
<item name="source" xsi:type="string">MyFieldsetName</item>
<item name="dataScope" xsi:type="string">my_text</item>
<item name="sortOrder" xsi:type="number">30</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
--------------------------
--------------------------
</fieldset>
-
Not works. It's ordinary input.Ruslan Mavlyanov– Ruslan Mavlyanov2019年12月12日 09:18:58 +00:00Commented Dec 12, 2019 at 9:18
Explore related questions
See similar questions with these tags.
<item name="notice") to dynamicRow. But it's not provided in dynamicRow tempate. For simple fieldsnoticeworks like a charmmagento/module-ui/view/base/web/templates/form/element/text.html. But how to use it?