淺談Vue項目實戰(頁面渲染+事件綁定)

頁面渲染html

vue是不會去操做dom節點,是有數據去操控節點,在js文件數據都在data裏vue

*js代碼片*
export default {
    data() {
      return {
        formInline: {
          user: 'admin',
          region: 'shanghai'
        }
      }
   }
}

*vue代碼片*

*下面的標籤是使用element ui搭建頁面,和vue沒毛關係,當成通常標籤*

<template>
    <el-row>
         <el-col :span="6">
            <div class="grid-content bg-purple">
                <el-form-item label="名稱">
                <el-input v-model="formInline.name"></el-input>
              </el-form-item>
            </div>
          </el-col>
    </el-row>
</template>
<script>
 import listJS from './list.js';   //引入上面的js文件
    export default listJS;         //在把它輸出,即可以渲染頁面
</script>

vue數據渲染不僅有這種方法,這是適合項目使用web

渲染數據的方式我的經驗dom

v-modle="formInline.name"  文本框渲染值
v-html="formInline.name"   通常標籤渲染<h2><span><div>等
{{="formInline.name"}}    通常標籤渲染<h2><span><div>等
v-for                     渲染列表
v-bind:value              綁定value屬性
v-on:click 或者@click       click事件(兩種寫法)
v-modle:trim              v-modle修飾符,去掉空格

//例如渲染list
 list:[
        {name:"zhang",age:"20",completed:true},
        {name:"lisi",age:"21",completed:true},
        {name:"longwu",age:"23",completed:true},
        {name:"wangqi",age:"24",completed:true},
        {name:"shang",age:"25",completed:true}
    ]

<li v-for="(item,index) in list" >
    <input type="text" v-bind:value="item.name"  v-bind:disabled="item.completed"/>
    <input type="text" v-bind:value="item.age"   v-bind:disabled="item.completed"/>
    <button v-on:click="editItem(index)">編輯</button>
</li>

item就是每一列數據,index索引值,在項目中編輯,刪除使用。

數據渲染差很少就這樣,在看看鉤子函數函數

*js文件*
export default{
   //數據
  data(){
     return {
        dialogFormVisible: false,
        form: {
            id:"1",
           name: 'admin',
          region: 'beijing'
        },
    }
  },
  //事件方法
  methods :{
    editItem(index){
            this.list[index].completed=false;
    }
 },
 //掛載到實例以後加載,我的理解初始化渲染頁面這裏能夠調用方法
 mounted() {
      this.editItem();   //這樣掛載後這個方法會被直接調用。
    },
}

web學習交流羣:362513833學習

相關文章
相關標籤/搜索