From 3198b25445ce1dc81158353b3e012e8881014790 Mon Sep 17 00:00:00 2001 From: Markus Wüstenberg Date: Fri, 23 Oct 2020 12:14:23 +0200 Subject: Don't render or error on nil children (#32) This makes it easier to e.g. conditionally skip a component for rendering.--- gomponents.go | 3 +++ gomponents_test.go | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/gomponents.go b/gomponents.go index c0aa510..ee156b9 100644 --- a/gomponents.go +++ b/gomponents.go @@ -84,6 +84,9 @@ func El(name string, children ...Node) NodeFunc { } func renderChild(c Node, inside, outside *strings.Builder) { + if c == nil { + return + } if g, ok := c.(group); ok { for _, groupC := range g.children { renderChild(groupC, inside, outside) diff --git a/gomponents_test.go b/gomponents_test.go index db9256c..33d32d1 100644 --- a/gomponents_test.go +++ b/gomponents_test.go @@ -83,6 +83,11 @@ func TestEl(t *testing.T) { e := g.El("div", outsider{}) assert.Equal(t, `