在vue.js中可以通過watch
來監聽資料的變化,比如通過watch
實現的簡單計數器:
點我增加
var vm = new vue(
})vm.$watch('count',function(newvalue,oldvalue)
)
效果如下:
watch
有兩個引數,乙個是要監聽的變數,另乙個是**函式,**函式接受兩個引數,第乙個引數是新值,第二個引數是舊值。
下面再來看一下有關單位換算的例子:
千克:
var vm = new vue(,
class
與style
是html元素的屬性,用於設定元素的樣式,可以利用v-bind
來設定樣式屬性。v-bind
在處理class
以及style
時專門增強了,表示式的結果型別除了是字串外,還能是物件或者陣列。
可以為v-bind:class
設定乙個物件,從而動態切換class
:
vm = new vue(
})
也可以傳入多個屬性來動態切換多個class
:
.class0
.class1
.class2
var vm = new vue(
})
效果:
也可以利用物件進行簡化:
var vm = new vue(}})
在v-bind:class
中除了是乙個物件還能繫結返回物件的計算屬性,比如:
var vm = new vue(
},computed:}}
})
效果如下:
也可以傳遞給v-bind:class
乙個陣列,陣列的元素為變數,變數的內容為對應的css類名:
var vm = new vue(
})
也可以利用三元表示式來切換:
可以在v-bind:style
中直接設定樣式(注意前後帶{}
):
var vm = new vue(
})
當然也可以像繫結class
一樣直接繫結到乙個物件上:
var vm = new vue(}})
也可以使用陣列進行繫結多個樣式:
var vm = new vue(,
styleobject2:
}# 5
})
另外當v-bind:style
需要特殊字首的css時,比如transform
,vue會自動偵測並新增相應字首。
事件監聽可以使用v-on
:
這個按鈕被點選了}次
通常來說單擊按鈕會觸發乙個方法呼叫,在methods
中指定即可:
當然也可以使用內聯的js語句:
say what
var vm = new vue(}})
vue為v-on
提供了事件修飾符來處理dom事件細節,如event.preventdefault()
或event.stoppropagation()
,通過.
表示的指令呼叫修飾符:
vue允許在v-on在監聽鍵盤事件時新增按鍵修飾提示符:
keycode值對應ascii表,為了方便,vue為常用的按鍵提供了別名:
當然也可以進行按鍵的組合,使用.
連線即可。
例子如下:
var vm = new vue(,
ctrlcpressed:function()}})
vue學習筆記《三》
vue 高階,1.slot 插槽 內容分發 a.單個slot b.具名slot a 模板中呼叫 a 混合父元件的內容與子元件自己的模板 內容分發 父元件模板的內容在父元件作用域內編譯,子元件模板的內容在子元件作用域內編譯 2.transition 過渡 vue 在插入,更新或者移除dom 時,提供多...
vue學習筆記(三)
1.按鍵修飾符 1.1 vue定義的常用按鍵名 keyup.enter add 1.2 直接使用按鍵碼 1.3 自定義按鍵名 vue.config.keycodes 2.自定義指令 vue的內建指令有v on v bind v for等等,vue 也允許註冊自定義指令。呼叫的時候,一定要加 v 字首...
vue基礎學習筆記(三)
6.監視 watch computed 7.專案相關 引入物件 import vuerouter from vue router 安裝外掛程式 vue.use vuerouter 掛載屬性的行為 建立路由物件 let router newvuerouter 將路由物件放入到options中new v...