Skip to content

Commit 89f418e

Browse files
@for improved
1 parent 89ce29b commit 89f418e

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

scripts/singlight.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,12 @@ class Page { // create parent class for pages
7272
let variables, el, vars // initial for variables (parameters) and new element builded
7373
template.querySelectorAll("[\\@for]").forEach(e => { // start loop of every @for
7474
variables = e.getAttribute("@for").split(" of ") // extract for value
75-
for (let i of this[variables[1].trim()]) { // really 'for' for make elements
75+
for (let i in this[variables[1].trim()].iAmReactive === true ? this[variables[1].trim()].value : this[variables[1].trim()]) { // really 'for' for make elements
7676
el = document.createElement(e.nodeName) // make new element with main element name
7777
el.innerHTML = e.innerHTML // set new element inner by main element inner
7878
el = e.parentNode.insertBefore(el, e) // insert new element before main element
7979
vars = this // set this data to vars
80-
vars[variables[0].trim()] = i // inject variable value in page class
80+
vars[variables[0].trim()] = this[variables[1].trim()].iAmReactive === true ? this[variables[1].trim()].value[i] : this[variables[1].trim()][i] // inject variable value in page class
8181
replaceVariables(el, vars) // replace variables {{ ... }}
8282
}
8383
e.parentNode.removeChild(e) // remove new element
@@ -142,6 +142,7 @@ class Page { // create parent class for pages
142142
}
143143

144144
class Reactive { // reactivity class
145+
iAmReactive = true;
145146
constructor(value) {
146147
this.value = value // initial set value
147148
}

scripts/singlight.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)