Selaa lähdekoodia

Init directives for x-if contents after it's created.

Niklan 4 vuotta sitten
vanhempi
commit
b9d03fe4fd
1 muutettua tiedostoa jossa 7 lisäystä ja 2 poistoa
  1. 7 2
      packages/alpinejs/src/directives/x-if.js

+ 7 - 2
packages/alpinejs/src/directives/x-if.js

@@ -1,7 +1,8 @@
 import { evaluateLater } from '../evaluator'
-import { setStyles } from '../utils/styles'
 import { directive } from '../directives'
-import { once } from '../utils/once'
+import {initTree} from "../lifecycle";
+import {addScopeToNode} from "../scope";
+import {reactive} from "../reactivity";
 
 directive('if', (el, { modifiers, expression }, { effect, cleanup }) => {
     let evaluate = evaluateLater(el, expression)
@@ -11,6 +12,10 @@ directive('if', (el, { modifiers, expression }, { effect, cleanup }) => {
 
         let clone = el.content.cloneNode(true).firstElementChild
 
+        addScopeToNode(clone, reactive(modifiers), el)
+
+        initTree(clone)
+
         el.after(clone)
 
         el._x_currentIfEl = clone