vue 指令

新建一个vue项目  vue  create  项目名称   

执行 npm run serve

新建一个vite项目 npm init vite-app 项目名称 

cd进入目录 npm i    执行npm run dev

新建一个react项  npx create-react-app 项目名称

执行  npm start

内容渲染指令

<div id="app">

       v-text {{ }}只能渲染纯文本数据 v-html可渲染标签类html元素

        <p v-text=”username”> 123</p>    v-text 会覆盖原本数据(123)  所以主用{{ }}

        <p>{{username}}</p>

        <p v-html=”info”></p>

</div>

  1. 导入 Vue 的库文件

  <script src="./lib/vue-2.6.12.js"></script>

  2. 创建 Vue 的实例对象

  <script>

    // 创建 Vue 的实例对象

    const vm = new Vue({

      // el表示当前 vm 实例要控制页面上的哪个区域,接收的值是一个选择器

      el: '#app',

      // data 对象就是要渲染到页面上的数据

      data: {

        username: 'zhangsan',

        info:'<h4 style="color:red "> 你好啊</h4> '

      }

    })

  </script>



属性渲染指令

v-bind: 或  简写为  :
<div class="app">

        <input type="text" v-bind:placeholder='gender'>

        <input type="text" :placeholder='gender'>

  </div>

事件渲染指令

v-on:可简写为@  ( )为传参
		 
<button v-on:click='add(5)'>+1</button>
        <button v-on:click='sub'>-1</button>
        <button @click='add(2)'>11</button>  
        <button @click='add2($event,1)'> +N</button>  获得触发事件对象 $event
        <button @click='add3'>11</button>    
this == 创建的vue实例对象 如nw 

const nw=new Vue({ 
            el:'.app',
            data:{
                count:0,
            },
            methods:{
                add(n){
                    this.count+=n
                },
                sub(){
                    this.count--
                },
                add2(e,n)
                {
                    n为传递来的参数1
                    e.target为触发事件的对象 button标签
                }
                add3()
                {
                  event.target为触发事件的对象 button标签 等同于add2中的e
                }
            }
        })

单击修饰符

 按键修饰符

        <input type="text" @keyup.esc='clear' @keyup.enter='submit'>  给回车和esc绑定事件

 双向绑定 v-model  (仅表单元素可用)

更改绑定了v-model元素的值  data:{}中相应元素也会更改

<div class="app">
        <input type="text" v-model='uname'> //更改该input的值 data中的uname值也会改变   
        <input type="text" :value='uname'>
        <select v-model='city'>   //city =2  会默认显示上海(value=2的标签)
            <option value="" >请选择</option>
            <option value="1">北京</option>
            <option value="2">上海</option>
            <option value="3">山东</option>
        </select>
    </div>
    <script src="./lib/vue-2.6.12.js"></script>
    <script>
        const nw=new Vue({
            el:'.app',
            data:{
                uname:'gebilaoli',
                city:'2'
              }
        })
    </script>

   .lazy失去焦点更新数据

条件渲染指令  (显示或隐藏)

v-show  动态为元素添加display:none样式,来实现元素的显示和隐藏  (频繁切换显示或隐藏使用)

v-if         动态创建或移除元素,实现元素的显示或隐藏   (默认不需要展示使用)

v-else-if     v-else  (结合v-if使用)

循环渲染指令

v-for          要给谁执行循环给谁加v-for  会将其内的子元素一并复制

<tr v-for='(item,i) in list' :key=’item.id’ :title=’itme.name’>

Title 给每一行加一个标题

item数组中的数据  i索引可不加   list数组名

                   <td>{{i+1}}</td>

                   <td>{{item.id}}</td>

                   <td>{{item.uname}}</td>

               </tr>

 lable的for属性


按钮
<input type="checkbox" class="custom-control-input" :id="'a'+item.id"v-model='item.status'>
   <label class="custom-control-label" :for="'a'+item.id" v-if='item.status'>已启用</label>
   <label class="custom-control-label" :for="'a'+item.id" v-else>已禁用</label>
   lable的for标签指向input的id标签           

根据id删除对应信息

          <a href="javascript:;" @click="remove(item.id)">删除</a>
          remove(id) {
          this.list = this.list.filter(item => item.id !== id)
        },

给form标签添加submit事件

        <form @submit.prevent="add">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值