Skip to content

Commit

Permalink
add component arguments section
Browse files Browse the repository at this point in the history
  • Loading branch information
kbrsh committed Jul 16, 2018
1 parent cbdcaeb commit c79eb0a
Show file tree
Hide file tree
Showing 2 changed files with 82 additions and 0 deletions.
37 changes: 37 additions & 0 deletions web/doc/components.html
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,43 @@ <h1>Components</h1>
});
</script>

<h3 id="arguments">Arguments</h3>
<p>Components can take <em>arguments</em>, which will be set on the instance data.</p>
<pre><code lang="mvl"><span class="gray">&lt;!-- Root View --&gt;</span>
<span class="red">&lt;ColoredParagraph</span> <span class="orange">color</span>=<span class="green">&quot;red&quot;</span><span class="red">/&gt;</span>
<span class="red">&lt;ColoredParagraph</span> <span class="orange">color</span>=<span class="green">&quot;blue&quot;</span><span class="red">/&gt;</span>
<span class="red">&lt;ColoredParagraph</span> <span class="orange">color</span>={color}<span class="red">/&gt;</span>
</code></pre>
<pre><code lang="mvl"><span class="gray">&lt;!-- ColoredParagraph View --&gt;</span>
<span class="red">&lt;p</span> <span class="orange">style</span>={<span class="green">&quot;color:&quot;</span> + color}<span class="red">&gt;</span>
Ut Lunam, citius quam lux, levior quam totum.
<span class="red">&lt;/p</span><span class="red">&gt;</span>
</code></pre>
<pre><code lang="js">Moon.<span class="blue">extend</span>(<span class="green">&quot;ColoredParagraph&quot;</span>, {});

<span class="blue">Moon</span>({
root: <span class="green">&quot;#root&quot;</span>,
color: <span class="green">&quot;green&quot;</span>
});
</code></pre>
<div id="example-components-arguments" class="example"></div>

<script>
Moon.extend("ColoredParagraph", function() {
return {
view: "<p style={\"color:\" + color}>Ut Lunam, citius quam lux, levior quam totum.</p>"
}
});

var ComponentsArguments = Moon({
root: "#example-components-arguments",
view: "<ColoredParagraph color=\"red\"/><ColoredParagraph color=\"blue\"/><ColoredParagraph color={color}/>",
color: "green"
});
</script>

<p>Try entering <code>ComponentsArguments.update(&quot;color&quot;, &quot;black&quot;)</code> in the console to update the color of the last colored paragraph.</p>

</div>
</div>
</body>
Expand Down
45 changes: 45 additions & 0 deletions web/src/doc/components.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,48 @@ Moon({
view: "<Counter/><Counter/><Counter/>"
});
</script>

### Arguments

Components can take _arguments_, which will be set on the instance data.

```mvl
<!-- Root View -->
<ColoredParagraph color="red"/>
<ColoredParagraph color="blue"/>
<ColoredParagraph color={color}/>
```

```mvl
<!-- ColoredParagraph View -->
<p style={"color:" + color}>
Ut Lunam, citius quam lux, levior quam totum.
</p>
```

```js
Moon.extend("ColoredParagraph", {});

Moon({
root: "#root",
color: "green"
});
```

<div id="example-components-arguments" class="example"></div>

<script>
Moon.extend("ColoredParagraph", function() {
return {
view: "<p style={\"color:\" + color}>Ut Lunam, citius quam lux, levior quam totum.</p>"
}
});

var ComponentsArguments = Moon({
root: "#example-components-arguments",
view: "<ColoredParagraph color=\"red\"/><ColoredParagraph color=\"blue\"/><ColoredParagraph color={color}/>",
color: "green"
});
</script>

Try entering `ComponentsArguments.update("color", "black")` in the console to update the color of the last colored paragraph.

0 comments on commit c79eb0a

Please sign in to comment.