Dedupe custom codes emitted by rx.memo components
This commit is contained in:
parent
85f07fcd89
commit
45fc6b057a
@ -1,11 +1,14 @@
|
||||
{% extends "web/pages/base_page.js.jinja2" %}
|
||||
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
||||
{% block export %}
|
||||
{% for component in components %}
|
||||
|
||||
{% for custom_code in component.custom_code %}
|
||||
{% block declaration %}
|
||||
{% for custom_code in custom_codes %}
|
||||
{{custom_code}}
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
|
||||
{% block export %}
|
||||
{% for component in components %}
|
||||
|
||||
export const {{component.name}} = memo(({ {{-component.props|join(", ")-}} }) => {
|
||||
{{ renderHooks(component.hooks) }}
|
||||
|
@ -246,12 +246,20 @@ def _compile_components(
|
||||
for comp_import in comp_render["dynamic_imports"]
|
||||
}
|
||||
|
||||
custom_codes = {
|
||||
comp_import: None
|
||||
for comp_render in component_renders
|
||||
if "custom_code" in comp_render
|
||||
for comp_import in comp_render["custom_code"]
|
||||
}
|
||||
|
||||
# Compile the components page.
|
||||
return (
|
||||
templates.COMPONENTS.render(
|
||||
imports=utils.compile_imports(imports),
|
||||
components=component_renders,
|
||||
dynamic_imports=dynamic_imports,
|
||||
custom_codes=custom_codes,
|
||||
),
|
||||
imports,
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user