Skip to content
This repository was archived by the owner on Nov 19, 2024. It is now read-only.

Commit ee8bd61

Browse files
authored
Merge pull request #8601 from Santoshziffity/Ui-columnscontrols-clarification-7730
ui-columncontrols-clarification-7730
2 parents 4859bbe + 80c8545 commit ee8bd61

File tree

1 file changed

+43
-18
lines changed

1 file changed

+43
-18
lines changed

src/guides/v2.3/ui_comp_guide/components/ui-columnscontrols.md

Lines changed: 43 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,24 +23,49 @@ Extends [`uiCollection`]({{ page.baseurl }}/ui_comp_guide/concepts/ui_comp_uicol
2323
* [`app/code/Magento/Ui/view/base/web/js/grid/controls/columns.js`]({{ site.mage2bloburl }}/{{ page.guide_version }}/app/code/Magento/Ui/view/base/web/js/grid/controls/columns.js)
2424
* [`app/code/Magento/Ui/view/base/web/templates/grid/controls/columns.html`]({{ site.mage2bloburl }}/{{ page.guide_version }}/app/code/Magento/Ui/view/base/web/templates/grid/controls/columns.html)
2525

26-
## Examples
27-
28-
### Add ColumnsControls component to Listing basic component
29-
30-
```xml
31-
<listing>
32-
...
33-
<listingToolbar>
34-
...
35-
<columnsControls name="columns_controls">
36-
<settings>
37-
<minVisible>1</minVisible>
38-
<maxVisible>3</maxVisible>
39-
</settings>
40-
</columnsControls>
41-
</listingToolbar>
42-
...
43-
</listing>
26+
## Example
27+
28+
### Changing "minVisible" and "maxVisible" values in the javascript file.
29+
30+
To change attribute values, override the vendor JS file in a custom module:
31+
32+
`/vendor/magento/module-ui/view/base/web/js/grid/controls/columns.js`
33+
34+
#### Step one: override the javascript file
35+
36+
In `/app/code/[VENDOR_NAME]/[MODULE_NAME]/view/base/requirejs-config.js`, add the following:
37+
38+
```javascript
39+
var config = {
40+
map: {
41+
'*': {
42+
'Magento_Ui/js/grid/controls/columns':'VENDOR_NAME_MODULE_NAME/js/grid/controls/columns'
43+
}
44+
}
45+
}
46+
```
47+
48+
#### Step two: set the custom values
49+
50+
In `/app/code/[VENDOR_NAME]/[MODULE_NAME]/view/base/web/js/grid/controls/columns.js`, change the "minVisible" and "maxVisible" values as needed:
51+
52+
```js
53+
return Collection.extend({
54+
defaults: {
55+
template: 'ui/grid/controls/columns',
56+
minVisible: 1,
57+
maxVisible: 4,
58+
viewportSize: 18,
59+
displayArea: 'dataGridActions',
60+
columnsProvider: 'ns = ${ $.ns }, componentType = columns',
61+
imports: {
62+
addColumns: '${ $.columnsProvider }:elems'
63+
},
64+
templates: {
65+
headerMsg: $t('${ $.visible } out of ${ $.total } visible')
66+
}
67+
}
68+
});
4469
```
4570

4671
#### Result

0 commit comments

Comments
 (0)