Vue的el屬性是用于指定Vue實例所綁定的DOM元素。el可以是一個字符串或者一個DOM元素,指定綁定的元素的方法有多種,可以是HTML標簽名、CSS選擇器、DOM元素等等。
const app = new Vue({
el: "#app",
data: {
message: "Hello, Vue!"
}
});
在上面的代碼中,el屬性的值為"#app",代表Vue實例將會掛載到id為"app"的元素上。當實例被創建之后,Vue會在指定的DOM元素內部編譯模板,并替換掉該元素。
注意,如果使用字符串作為el的值,那么Vue會使用document.querySelector來查找指定的DOM元素。如果查找不到,則會拋出錯誤。
const app = new Vue({
el: "#non-existing-element",
data: {
message: "Hello, Vue!"
}
});
// Uncaught Error: Cannot find element: #non-existing-element
在實際開發中,我們一般不會在Vue實例外部聲明DOM元素,而是在Vue模板中使用指令或者組件來聲明元素。如下所示:
{{ message }}const app = new Vue({
el: "#app",
data: {
message: "Hello, Vue!"
}
});
在上面的代碼中,我們在#app元素內部使用了{{ message }}語法來顯示Vue實例中的message屬性。Vue會在編譯模板時將{{ message }}替換成該屬性的值。
此外,我們也可以使用v-bind指令將Vue實例中的數據綁定到DOM元素的屬性上:
const app = new Vue({
el: "#app",
data: {
buttonClass: "primary"
}
});
在上面的代碼中,我們使用v-bind:class指令將buttonClass屬性的值綁定到button元素的class屬性上。當Vue實例中的buttonClass屬性變化時,按鈕的類名也會跟著變化。