pull/12644/head
Rich Harris 2 years ago
parent 0d6cb5b48f
commit 68174eb0c9

@ -149,11 +149,12 @@ function serialize_class_directives(class_directives, element_id, context, is_at
for (const directive of class_directives) { for (const directive of class_directives) {
const value = /** @type {Expression} */ (context.visit(directive.expression)); const value = /** @type {Expression} */ (context.visit(directive.expression));
const update = b.stmt(b.call('$.toggle_class', element_id, b.literal(directive.name), value)); const update = b.stmt(b.call('$.toggle_class', element_id, b.literal(directive.name), value));
const has_call = directive.expression.type === 'CallExpression';
const { has_state, has_call } = directive.metadata.expression;
if (!is_attributes_reactive && has_call) { if (!is_attributes_reactive && has_call) {
state.init.push(serialize_update(update)); state.init.push(serialize_update(update));
} else if (is_attributes_reactive || directive.metadata.expression.has_state || has_call) { } else if (is_attributes_reactive || has_state || has_call) {
state.update.push(update); state.update.push(update);
} else { } else {
state.init.push(update); state.init.push(update);

Loading…
Cancel
Save