Vue.js foloseste o sintaxa de template bazata pe taguri HTML. Template-ul e compilat in functii de redare Virtual DOM.
Forma de baza pentru template e un sir text (un nume de proprietate) adaugat intre doua acolade duble:
<div>Message: {{ msg }}</div>
Grupul de acolade duble va fi inlocuit de valoarea proprietatii
msg din obiectul
data. De asemenea, va fi actualizat de fiecare data cand valoarea proprietatii "msg" se modifica.
- Exemplu, la clic pe un buton e modificata valoarea unei proprietati din "data" (aici "str"), schimband textul adaugat intr-un Div:
<div id='app'>
<div>{{ str }}</div>
<button @click='str = "Iubesc Viata"'>Click</button>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {str: 'Sunt Eu insumi.'}
})
</script>
Taguri HTML in template
In mod implicit continutul care va inlocui grupul de acolade duble este interpretat ca text simplu. Pentru a reda cod HTML se foloseste directiva v-html
.
Exemplu:
<div id='app'>
<p>Without directive: {{ str_html }}</p>
<p>Using v-html directive: <span v-html="str_html"></span></p>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {str_html: '<b style="color:#00f">Sunt Eu insumi.</b>'}
})
</script>
Sintaxa cu acolade duble nu se foloseste in atribute HTML.
Utilizare expresii JavaScript in Vue Template
Vue.js suporta expresii JavaScript in toate datele de legatura cu HTML (o singura expresie):
{{ number + 1 }}
{{ ok ? 'YES' : 'NO' }}
{{ message.split('').reverse().join('') }}
<div v-bind:id="'list-' + id"></div>
- Exemplu, arata numarul de clicuri pe un buton:
<div id='app'>
<div>Number of licks: {{ nr}}</div>
<button @click='nr +=1'>Click</button>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {nr: 0}
})
</script>
Alt exemplu, afiseaza in ordine inversa caracterele adaugate intr-o caseta de text:
<div id='app'>
<p>{{ msg.split('').reverse().join('') }}</p>
Add some text in this input:<br>
<input v-model='msg'>
</div>
<script>
var vue_ob = new Vue({
el: '#app',
data: {msg: 'Hello Vue!'}
})
</script>
Un Test simplu in fiecare zi
HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tip de <input> creaza un camp de text care trebuie sa contina doar numere?
type="text" type="number" type="date"<input type="number" name="points" min="5" max="80" />
Ce proprietate CSS permite modificarea transparentei unui element?
font-style opacity color#id {
filter:alpha(opacity=40); /* for IE */
opacity:0.4;
}
Clic pe functia care formateaza un numar la o anumita lungime de caractere.
toPrecision() exp() toFixed()var num = 12.84567;
alert( num.toPrecision(3) ); // 12.8
Ce functie aranjeaza aleator elementele dintr-un array?
natsort() shuffle() sort()$lang =[10=>"PHP", 20=>"JavaScript", "site"=>"coursesweb.net");
shuffle($lang);
var_export($lang); // array (0=>"coursesweb.net", 1=>"PHP", 2=>"JavaScript")
Indicati Superlativul cuvantului "good" (bun).
better best goodestShe is the best in our class.
- Ea este cea mai buna din clasa noastra.
Care este Superlativul cuvantului "bueno" (bun)?
el mejor más bueno muy buenoÉl es el mejor en nuestra clase.
- El este cel mai bun din clasa noastra.