国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

免費的中文logo網(wǎng)站sem投放

免費的中文logo網(wǎng)站,sem投放,做防偽查詢網(wǎng)站,做外貿(mào)有必要做個網(wǎng)站嗎模板語法 Vue.js 使用了基于 HTML 的模板語法,允許開發(fā)者聲明式地將 DOM 綁定至底層 Vue 實例的數(shù)據(jù)。所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循規(guī)范的瀏覽器和 HTML 解析器解析。vue將模板編譯成虛擬dom, 結(jié)合響應系統(tǒng),V…

模板語法
Vue.js 使用了基于 HTML 的模板語法,允許開發(fā)者聲明式地將 DOM 綁定至底層 Vue 實例的數(shù)據(jù)。所有 Vue.js 的模板都是合法的 HTML ,所以能被遵循規(guī)范的瀏覽器和 HTML 解析器解析。vue將模板編譯成虛擬dom,
結(jié)合響應系統(tǒng),Vue 能夠智能地計算出最少需要重新渲染多少組件,并把 DOM 操作次數(shù)減到最少。

html模板語法:
這是一種基于字符串的模板技術,以字符串和數(shù)據(jù)為輸入,通過用正則表達式將占位符替換為所需數(shù)據(jù)的方式,構建出完整的 HTML 字符串。

插值
文本
使用{{msg}}的形式,標簽將會被替換成為數(shù)據(jù)對象(data)上msg屬性值,當綁定的數(shù)據(jù)對象上的msg屬性值發(fā)生變化時,插值處的值也會發(fā)生變化(雙向綁定)
示例:上節(jié)課的hello vue示例使用的就是插值。

html
{{}}的方式將數(shù)據(jù)處理為普通文本,如果要輸出html,需要使用v-html指令
示例:
在data中定義一個html屬性,其值為html

data: {
? ? html: ?'<input type="text" value="hello"/>'
}
1
2
3
在html中取值

<span v-html="html"></span>
1
屬性
HTML屬性中的值應使用v-bind指令。類型與jQuery中的$(“#xxx”).attr(propName, propVal)
示例,以修改元素的class屬性為例:
定義一個樣式

<style>
.redClass {
? ? font-size: 30px;
? ? color: red;
}
</style>
1
2
3
4
5
6
在data中定義一個屬性,其值為上面定義的樣式名

data: {
? ? red: 'redClass'
}
1
2
3
在html使用v-bind指令設置樣式

<p>設置之前: ?aaaa</p>
<p>設置之后: <span v-bind:class="red">aaa</span></p>
1
2
在瀏覽器中可以看到相應的效果
表達式
幾種常見的表達式:

{{str.substr(0,6).toUpperCase()}}
{{ number + 1 }}
{{ ok ? ‘YES’ : ‘NO’ }} 三元運算符
我的Id是js動態(tài)生成的
示例1:

在html中加入元素,定義表達式

<span>{{str.substr(0,6).toUpperCase()}}</span>
在data中加入一個屬性,名為str與html中對應

data: {
? ? str: 'hello vue'
}
查看效果:字符串被截取,并轉(zhuǎn)換為大寫
1
2
3
4
5
6
7
8
9
示例2:

<span>{{ number + 1 }}</span>
在data中加入一個屬性,名為str與html中對應
data: {
? ? number: 10
}
在data中定義的number值將會被加1
1
2
3
4
5
6
示例3:

這是一個三元運算,如果ok為true,表達式值為YES ,如果ok為false則表達式值為NO

<span>{{ ok ? 'YES' : 'NO' }}</span>
在data中加入一個屬性,名為str與html中對應

data: {
? ? ok: true
}
1
2
3
4
5
6
7
8
示例4:

演示id屬性綁定和動態(tài)賦值

<p>
? ? <input type="text" v-bind:id="bookId"/></br>
? ? <!--動態(tài)生成Id-->
? ? <input type="text" v-bind:id="'bookList_' + id"/>
</p>
data: {
? ? bookId: 'book001',
? ? id: 'book002'
}
該示例可以通過開發(fā)者工具查看生成的id屬性值。
1
2
3
4
5
6
7
8
9
10
11
12
指令
指令指的是帶有“v-"前綴的特殊屬性
1.2.1 核心指令
1.2.1.1 v-if |v-else-if|v-else
根據(jù)其后表達式的bool值進行判斷是否渲染該元素, 指令特性的值預期是單個 JavaScript 表達式 (v-for 是例外情況,稍后我們再討論)
示例:

<div v-if="type === 'A'">
? ? type == A
</div>
<div v-else-if="type === 'B'">
? ? type == B
</div>
<div v-else>
? ? other value
</div>
JS

? ? var vm = new Vue({

? ? ? ? el: '#app',

? ? ? ? data: {
? ? ? ? ? ? type: 'C'
? ? ? ? }
? ? });
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
可以修改data中的type值觀察頁面的輸出。

注: js = == === 之間的區(qū)別
一個等號是賦值操作,==先轉(zhuǎn)換類型再比較,===先判斷類型,如果不是同一類型直接為false
alert(1 == “1”); // true
alert(1 === “1”); // false

1.2.1.2 v-show
與v-if類似,只是不會渲染其身后表達式為false的元素,而且會給這樣的元素添加css代碼:style=“display:none”。
當v-show 表達式true則顯示,否則不顯示。
注意:使用v-show,雖然不顯示,但在頁面的dom中是存在的,只是display屬性為none
示例: 在HTML中加入如下內(nèi)容

<div v-show="show === 'yes'">
? ? show == yes
</div>
在data中定義show屬性

var vm = new Vue({
? ? el: '#app',
? ? data: {
? ? ? ? show: 'yes'?
? ? }
});
1
2
3
4
5
6
7
8
9
10
11
修改show值,觀察頁面顯示

1.2.1.3 v-for
循環(huán)遍歷

遍歷數(shù)組: v-for=“item in items”, items是數(shù)組,item為數(shù)組中的數(shù)組元素
遍歷對象: v-for=“(value,key,index) in stu”, value屬性值, key屬性名,index下標
示例:

定義一個div,使用v-for指令輸出,items是vue實例中data中定義的對象數(shù)組
<!--數(shù)組-->
<div v-for="item in items">
? ? ?{{item.name}} -- {{item.id}}
</div>

<!--循環(huán)生成下拉列表-->
<div>
? ? <select >
? ? ? ? <option v-for="item in items"?
? ? ? ? ? ? v-bind:value="item.id">{{item.name}}</option>
? ? </select>
</div>

<!--對象-->
<div v-for="(o,key) in obj">
? ? {{key}}-{{o}}
</div>
var vm = new Vue({

? ? el: '#app',

? ? data: {
? ? ? ? itmes:[
? ? ? ? ? ? {name: 'zs',age:18},
? ? ? ? ? ? {name: 'ww',age:19},
? ? ? ? ? ? {name: 'ls',age:20},
? ? ? ? ? ? {name: 'zl',age:21}
? ? ? ? ],
? ? ? ? obj: {
? ? ? ? ? ? name:'張三',
? ? ? ? ? ? age: 21,
? ? ? ? ? ? addr: '湖南長沙'
? ? ? ? }
? ? }
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
1.2.1.4 v-on|v-model|v-for
創(chuàng)建一組多選框,可以獲取到用戶選擇項

<div v-for="(item,index) in items">
? ? {{index}}:<input type="checkbox" v-bind:value="item.id"
? ? ? ? ? ? v-model="selected">{{item.name}}
</div>
<button v-on:click="getSelected()">獲取選擇</button>
var vm = new Vue({

? ? el: '#app',

? ? data: {
? ? ? ? type: 'C',
? ? ? ? show: 'no',
? ? ? ? items:[
? ? ? ? ? ? {name: '長沙',id:18},
? ? ? ? ? ? {name: '昆明',id:19},
? ? ? ? ? ? {name: '武漢',id:20},
? ? ? ? ? ? {name: '南京',id:21}
? ? ? ? ],
? ? ? ? obj: {
? ? ? ? ? ? name:'張三',
? ? ? ? ? ? age: 21,
? ? ? ? ? ? addr: '湖南長沙'
? ? ? ? },
? ? ? ? selected:[]
? ? },
? ? methods: {
? ? ? ? getSelected: function() {
? ? ? ? ? ? console.log(this.selected);
? ? ? ? }
? ? }
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1.2.1.5 參數(shù) v-bind:href,v-on:click
示例:

<!--參數(shù):href-->
<div>
? ? <a v-bind:href="url">baidu</a>
</div>

<!--
參數(shù):動態(tài)參數(shù).
attname需要在data中定義,
注意:attname要全部小寫!!
-->
<div>
? ? <a v-bind:[attrname]="url">baidu</a>
? ? <button v-on:[evname]="clickme">點我看看</button>
</div>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
注意:在動態(tài)參數(shù)中,作為參數(shù)的變量名(如:attrname)要全部小寫,否則無效 !!

var vm = new Vue({

? ? el: '#app',

? ? data: {

? ? ? ? url: 'https://www.baidu.com',
? ? ? ? attrname:'href',
? ? ? ? evname: 'click'
? ? },

? ? methods: {
? ? ? ? clickme: function() {
? ? ? ? ? ? console.log("點到我了");
? ? ? ? }
? ? }

});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
1.2.1.6 簡寫
Vue為v-bind和v-on這兩個最常用的指令,提供了特定簡寫

指令 簡寫 示例
v-bind:xxx :xxx v-bind:href 簡寫為 :href
v-on:xxx @xxx v-on:click 簡寫為 @click
2. 過濾器
vue允許自定義過濾器,一般用于常見的文本格式化,過濾器可用的兩個地方:雙花括號插值與v-bind表達式,過濾器應該被添加在js表達式的尾部,使用管道運算符"|"

2.1 局部過濾器
局部過濾器的定義:

var vm = new Vue({
? ? filters: {
? ? ? ? 'filterName': function(value) {
? ? ? ? ? ? //過濾器實現(xiàn)
? ? ? ? }
? ? }
});
過濾器的使用

<!--雙花括號中的使用-->
{{ name | capitalize }}
1
2
3
4
5
6
7
8
9
10
11
注1:過濾器函數(shù)接受表達式的值作為第一個參數(shù) 注2:過濾器可以串聯(lián) {{ message | filterA | filterB }} 注3:過濾器是JavaScript函數(shù),因此可以接受參數(shù): {{ message | filterA('arg1', arg2) }} 示例:
<div>
? ? <p>{{msg | toUpperCase}}</p>
</div>
var vm = new Vue({

? ? el: '#app',

? ? data: {
? ? ? ? msg:"hello vue"
? ? },

? ? //局部過濾器
? ? filters:{
? ? ? ? toUpperCase: function(value) {
? ? ? ? ? ? return value.toUpperCase();
? ? ? ? }
? ? }

});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2.2 全局過濾器
拷入date.js(日期格式化)放入項目js目錄中,在頁面中引入。
定義全局過濾器

//全局過濾器

Vue.filter('fmtDate',function(value) {
? ? return fmtDate(value, 'yyyy年MM月dd日')
});
1
2
3
過濾器的使用

<div>
? ? <p>{{date | fmtDate}}</p>
</div>
1
2
3
計算屬性
計算屬性用于快速計算視圖(View)中顯示的屬性,這些計算將被緩存,并且只在需要時更新
使用場景:當一個屬性需要復雜的邏輯運算之后才能獲取其值,可以使用計算屬性,在一個計算屬性中可以完成各種復雜的邏輯,包括運算,方法調(diào)用等,只要最終返回一個結(jié)果就可以了
聲明計算屬性的格式:
computed:{
? ?xxx:function(){
?}
}
1
2
3
4
示例: 使用計算屬性,計算書本的總價
定義測試數(shù)據(jù),和計算屬性,計算屬性遍歷書本記錄,計算總價

var vm = new Vue({

? ? el: '#app',

? ? data: {
? ? ? ? //定義測試數(shù)據(jù)
? ? ? ? books: [
? ? ? ? ? ? {name:'紅樓夢', price:"120"},
? ? ? ? ? ? {name:'三國演義', price:"100"},
? ? ? ? ? ? {name:'水滸傳', price:"90"},
? ? ? ? ]
? ? },

? ? //計算屬性
? ? computed: {
? ? ? ? compTotal: function() {
? ? ? ? ? ? let sum = 0;
? ? ? ? ? ? for(index in this.books) {
? ? ? ? ? ? ? ? sum += parseInt(this.books[index].price);
? ? ? ? ? ? }
? ? ? ? ? ? return sum;
? ? ? ? }
? ? }

});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
計算屬性在頁面中的使用

<div v-for="book in books">
? ? {{book.name}} -> {{book.price}}
</div>

<div>
? ? 總價:{{compTotal}}
</div>
1
2
3
4
5
6
7
關于var 與 let

var聲明為全局屬性
let為ES6新增,可以聲明塊級作用域的變量(局部變量)
建議使用let聲明變量
4.監(jiān)聽屬性
使用場景:我們可以使用監(jiān)聽屬性watch來響應數(shù)據(jù)的變量, 當需要在數(shù)據(jù)變化時執(zhí)行異步或開銷較大的操作時,這種方式比較有用。回想一下是否做過下拉列表的級聯(lián)選擇?

watch聲明語法:

watch: {
? ? xxxx: function(val) {
? ? ? ? //監(jiān)聽器實現(xiàn)
? ? }
}
1
2
3
4
5
示例: 米和厘米的單位換算
設置監(jiān)聽器:

var vm = new Vue({

? ? el: '#app',

? ? data: {
? ? ? ? m: 1,
? ? ? ? cm: 100
? ? },

? ? //設置監(jiān)聽屬性
? ? watch: {
? ? ? ? m: function(val) {
? ? ? ? ? ? if(val)
? ? ? ? ? ? ? ? this.cm = parseInt(val) * 100;
? ? ? ? ? ? else
? ? ? ? ? ? ? ? this.cm = "";
? ? ? ? },
? ? ? ? cm: function(val) {
? ? ? ? ? ? if(val)
? ? ? ? ? ? ? ? this.m = parseInt(val) / 100;
? ? ? ? ? ? else
? ? ? ? ? ? ? ? this.m = "";
? ? ? ? }
? ? }

});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
HTML中使用v-model實現(xiàn)與數(shù)據(jù)的雙向綁定

<div>
? ? <!--注意v-model的雙向綁定-->
? ? 米: ? ? <input type="text" v-model="m">
? ? 厘米: ?<input type="text" v-model="cm">
</div>
———————————————

http://www.aloenet.com.cn/news/32343.html

相關文章:

  • 網(wǎng)站開源系統(tǒng)免費網(wǎng)站建設seo
  • 營銷qq和企業(yè)qq區(qū)別深圳專門做seo的公司
  • 網(wǎng)站建設英文怎么說百度一下你就知道官網(wǎng)網(wǎng)址
  • 成都商城網(wǎng)站建設地址推廣網(wǎng)頁怎么做的
  • 西安網(wǎng)站制作公司排名口碑營銷屬于什么營銷
  • 西部數(shù)碼網(wǎng)站助手4.0運營商推廣5g技術
  • 初學網(wǎng)站開發(fā)書籍關鍵詞歌曲歌詞
  • 濟南網(wǎng)站建設培訓學校百度首頁推薦關不掉嗎
  • 手機網(wǎng)站底部代碼北京seo網(wǎng)站管理
  • 網(wǎng)站開發(fā)z億瑪酷1流量訂制怎么做信息流廣告代理商
  • 海珠區(qū)建網(wǎng)站公司著名的網(wǎng)絡營銷案例
  • 怎么用模板做網(wǎng)站云南seo
  • 做網(wǎng)站 圖片素材怎么找智能建站系統(tǒng)
  • 醫(yī)院網(wǎng)站建設預算表企業(yè)網(wǎng)站制作步驟
  • 珠海營銷型網(wǎng)站建設百度站內(nèi)搜索的方法
  • 設置 wap網(wǎng)站seo網(wǎng)站自動發(fā)布外鏈工具
  • 怎么做網(wǎng)站掃描廣告點擊一次多少錢
  • 網(wǎng)站建設公司的服務特點網(wǎng)站優(yōu)化方案模板
  • 做電影網(wǎng)站考什么電商平臺推廣費用大概要多少
  • 網(wǎng)站優(yōu)化要從哪些方面做上海seo網(wǎng)站推廣
  • 吉林市做網(wǎng)站的科技公司網(wǎng)絡推廣常見的方法
  • 純html5網(wǎng)站源碼長沙網(wǎng)站優(yōu)化價格
  • 網(wǎng)站加速cdn自己做互聯(lián)網(wǎng)推廣是什么
  • 怎樣用wordpress建站網(wǎng)絡銷售是什么工作內(nèi)容
  • 社交平臺推廣方式seo外包方法
  • 網(wǎng)站建設 時間安排推廣軟件賺錢的app
  • 網(wǎng)站建設正版軟件廣東網(wǎng)站營銷seo方案
  • 做網(wǎng)站 價格seo怎么優(yōu)化方案
  • 保定專業(yè)做網(wǎng)站的公司最近的國際新聞
  • 足球網(wǎng)站建設企業(yè)網(wǎng)站怎么推廣