Add english documentation for customize components

This commit is contained in:
taitus
2021-03-24 12:11:30 +01:00
parent 8ee364c96c
commit a08ede294a
3 changed files with 27 additions and 0 deletions

View File

@@ -34,6 +34,7 @@
* [Views & Styles](en/customization/views_and_styles.md) * [Views & Styles](en/customization/views_and_styles.md)
* [Javascript](en/customization/javascript.md) * [Javascript](en/customization/javascript.md)
* [Models](en/customization/models.md) * [Models](en/customization/models.md)
* [Components](en/customization/components.md)
* [Gems](en/customization/gems.md) * [Gems](en/customization/gems.md)
* [Overwritting Application](en/customization/overwritting.md) * [Overwritting Application](en/customization/overwritting.md)

View File

@@ -0,0 +1,25 @@
# Components
For components, customization can be used to change both the logic (included in a `.rb` file) and the view (included in a `.erb` file). If you only want to customize the logic for, let's say, the `Admin::TableActionsComponent`, create a file named `app/components/custom/admin/table_actions_component.rb` with the following content:
```ruby
require_dependency Rails.root.join("app", "components", "admin", "table_actions_component").to_s
class Admin::TableActionsComponent
# Your custom logic here
end
```
If, on the other hand, you also want to customize the view, you need a small modification. Instead of the previous code, use:
```ruby
class Admin::TableActionsComponent < ApplicationComponent; end
require_dependency Rails.root.join("app", "components", "admin", "table_actions_component").to_s
class Admin::TableActionsComponent
# Your custom logic here
end
```
This will make the component use the view in `app/components/custom/admin/table_actions_component.html.erb`. You can create this file and customize it to your needs.

View File

@@ -6,5 +6,6 @@
* [Views & Styles](views_and_styles.md) * [Views & Styles](views_and_styles.md)
* [Javascript](javascript.md) * [Javascript](javascript.md)
* [Models](models.md) * [Models](models.md)
* [Components](components.md)
* [Gems](gems.md) * [Gems](gems.md)
* [Overwritting Application](overwritting.md) * [Overwritting Application](overwritting.md)