summaryrefslogtreecommitdiff
path: root/packages/renderers/renderer-lit/server.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/renderers/renderer-lit/server.js')
-rw-r--r--packages/renderers/renderer-lit/server.js10
1 files changed, 9 insertions, 1 deletions
diff --git a/packages/renderers/renderer-lit/server.js b/packages/renderers/renderer-lit/server.js
index c827f1ad1..e08b2bf9a 100644
--- a/packages/renderers/renderer-lit/server.js
+++ b/packages/renderers/renderer-lit/server.js
@@ -28,10 +28,18 @@ function* render(tagName, attrs, children) {
const instance = new LitElementRenderer(tagName);
// LitElementRenderer creates a new element instance, so copy over.
+ const Ctr = getCustomElementConstructor(tagName);
for (let [name, value] of Object.entries(attrs)) {
- instance.setAttribute(name, value);
+ // check if this is a reactive property
+ if (name in Ctr.prototype) {
+ instance.setProperty(name, value);
+ } else {
+ instance.setAttribute(name, value);
+ }
}
+ instance.connectedCallback();
+
yield `<${tagName}`;
yield* instance.renderAttributes();
yield `>`;