vue基础学习(一)

01-01 vue使用雏形

     <div id="box">
            {{msg}}
        </div>
        <script>
            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{
                        ‘msg‘:‘welcome vue‘
                    }
                });
            }
        </script>

01-02 v-model一般用于表单元素数据双向绑定

<div id="box">
            <input type="text" v-model="msg">
            <input type="text" v-model="msg">
            <p>{
                {msg}}</br>{{msg2}}</br>{{arr}}</br>{{json}}
            </p>

        </div>
        <script>
//            知识说明:
//                v-model:数据双向绑定
            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{
                        ‘msg‘:‘welcome vue‘,
                        ‘msg2‘:‘12‘,
                        ‘arr‘:[‘apple‘,‘oramge‘,‘pear‘],
                        ‘json‘:{a:‘apple‘,b:‘orange‘,c:‘pear‘}
                    }

                });
            }
        </script>

01-03 v-for循环数据

     <div id="box">
            <!--数组的循环-->
            <ul><li v-for="value in arr">{{value}}</li></ul>

            <hr>
            <!--json的循环-->
            <ul><li v-for="(v,k,index) in json">{{k}} {{v}}    {{index}}</li></ul>
        </div>
        <script>
//            知识说明:
//                v-for:数据循环    

//                    json数据:    (value,key,index) in json
//                    {{value}}:json的值
//                    {{key}}:json的key
//                    {{index}}:数据索引
            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{
                        ‘arr‘:[‘apple‘,‘oramge‘,‘pear‘],
                        ‘json‘:{a:‘apple‘,b:‘orange‘,c:‘pear‘}
                    }
                });
            }
        </script>

01-04  v-click等等基础事件

     <div id="box">
            <button type="button" v-on:click="show()">按钮</button>
            <button type="button" v-on:click="add()">添加</button>
            <br>
            <ul><li v-for="value in arr">{{value}}</li></ul>
        </div>
        <script>
//            知识说明:
//                    基础事件举例: v-on:click/mouseout/mouseover/dblclick/mousedown……

            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{//数据
                        ‘arr‘:[‘apple‘,‘oramge‘,‘pear‘],
                    },
                    methods:{//函数储存器
                        show:function(){
                            alert();
                        },
                        add:function(){
                            alert(this.arr);//this表示的是这个c=new Vue这个对象
                            this.arr.push(‘tomato‘);
                        }
                    }
                });
            }
        </script>

01-05  点击按钮div消失:v-show(false/true)

     <div id="box">
            <button type="button" v-on:click="a=false">消失</button>
            <div v-show="a" style="width:300px;height:300px;background:red;"></div>
        </div>
        <script>
//            知识说明:
//                v-show="true/false"//true显示,false隐藏

            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{//数据
                        a:true,
                    }
                });
            }
        </script>

01-06  案例添加删除用户

   <head>
        <meta charset="utf-8" />
        <title></title>
        <script src="vue/dist/vue.js"></script>
        <script src="js/jquery-2.1.1.min.js"></script>
        <link rel="stylesheet" href="bootstrap/css/bootstrap.css">
        <script src="bootstrap/js/bootstrap.js"></script>
    </head>
    <body>
        <article id="box" class="container">
            <form role="form">
                <div class="form-group">
                    <label for="uername">用户名:</label>
                    <input v-model="username" type="text" class="form-control" id="username" placeholder="输入用户名">
                </div>
                <div class="form-group">
                    <label for="age">年 龄:</label>
                    <input v-model="age" type="text" class="form-control" id="age" placeholder="输入年龄">
                </div>
                <div class="form-group">
                    <input v-on:click="add()" type="button" value="添加" class="btn btn-primary">
                    <input type="reset" value="重置" class="btn btn-danger">
                </div>
            </form>

            <hr>

            <table class="table table-bordered table-hover">
                <caption class="h3 text-center text-info">用户信息表</caption>
                <tr class="text-danger">
                    <th class="text-center">序号</th>
                    <th class="text-center">名字</th>
                    <th class="text-center">年龄</th>
                    <th class="text-center">操作</th>
                </tr>

                <!--循环数据-->
                <tr v-for="(item,index) in mydata" class="text-center"><td>{{index+1}}</td><td>{{item.name}}</td><td>{{item.age}}</td><td><button v-on:click="nowIndex=index" class="btn btn-primary btn-sm" data-toggle="modal" data-target="#layer">删除</button></td></tr>

                <tr v-show="mydata.length==0" class="text-center text-muted"><td colspan="4"><p>暂无数据……</p></td></tr>
                <tr v-show="mydata.length!=0" class="text-right text-muted"><td colspan="4"><button v-on:click="nowIndex=-2" class="btn btn-danger" data-toggle="modal" data-target="#layer">删除全部</button></td></tr>
            </table>

            <!--模态框,弹出框-->
            <div role="dialog" id="layer" class="modal fade">
                <div class="modal-dialog">
                    <div class="modal-content">

                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal"  aria-hidden="true">
                                &times;
                            </button>
                            <h4 class="modal-title"  id="myModalLabel">
                                确认删除吗?
                            </h4>
                        </div>
                        <div class="modal-body">
                            <button  data-dismiss="modal"  class="btn btn-primary btn-sm">取消</button>
                            <button v-on:click="delateMsg(nowIndex)" data-dismiss="modal"  class="btn btn-danger btn-sm">确认</button>
                        </div>

                    </div>
                </div>
            </div>

        </article>

        <script>
//            知识说明:
//                v-show="true/false"//true显示,false隐藏

            window.onload= function(){
                var c = new Vue({
                    el:"#box",//选择器
                    data:{//数据
                        //通过v-show="mydata.length==0"来控制“暂无数据”"删除全部"显示隐藏
                        mydata:[
                            {name:‘XXX‘,age:‘XX‘},
                            {name:‘XXX‘,age:‘XX‘},
                        ],
                        username:‘‘,
                        age:‘‘,
                        nowIndex:"-1000",
                    },
                    methods:{
                        add:function(){
                            this.mydata.push({
                                name:this.username,
                                age:this.age
                            });

                            //添加后清空表格
                            this.username="";
                            this.age="";
                        },
                        delateMsg:function(n){
                            if(n==-2){
                                this.mydata=[];
                            }else{
                                this.mydata.splice(n,1);
                            }
                        }
                    }
                });
            }
        </script>
    </body>
时间: 2024-08-27 18:54:32

vue基础学习(一)的相关文章

Vue基础学习一

Vue基础一 1.0 前端开发规范 ? 前端开发规范 1.1 vue版本更迭 vue版本 ???-?vue?1.0???2014年 ???-?vue?2.0???2016年 ???-?vue?3.0[?试用版?]?2019年国庆 1.2匿名函数 javascript (function?(形参1,形参2)?{ /?你的代码?/ ?})(实参1,实参2) ???-?好处 ?????-?1.?防止全局作用域 ?????-?2.?防止命名冲突 ?????-?3.?防止一些脚本的攻击 ?????-?4.

Vue基础学习之DOM操作

demo说明: 1.{{message}}                          --声明式渲染 2.v-bind:属性名                        --绑定元素属性 3.v-if="change=='a'"              --判断change=='a',等于则显示该DOM节点 4.v-else-if="change=='b'"      --结合[v-if]使用,判断change=='b',等于则显示该DOM节点 5.v

vue基础学习(三)

03-01  vue的生存周期-钩子函数 <style> [v-cloak]{display:none;} </style> <div id="box" v-cloak> {{msg}} <p v-text="msg"></p> </div> <script> //解决模板{{XX}}闪烁问题: // css: [v-cloak]{display:none;} 在模板中加v-cloa

Vue基础学习 --- 遍历数组

<body> <div id="app"> <ul> <!-- 遍历数组 --> <li v-for="user in users"> {{user.name}}:{{user.age}} </li> <!-- index索引,从0开始. --> <li v-for="(item, index) in users" :key="index"

Electron+Vue – 基础学习(2): 项目打包成exe桌面应用

项目创建完成,启动正常,接下来就是项目打包了.将测试Demo打包成exe桌面应用,点击exe文件,运行项目. 书接上文,创建项目有三种方式 Git拷贝.直接创建:通过electron社群提供的命令行工具(CLI)  electron-forge 创建项目,看起来对应的项目打包方式也应该有三种才对,但其实细看第一种方式和第三种项目创建方式是一样的,所以它们的项目打包方式也是一样的. 打包 electron 项目webpack工具有 electron-packager 和 electron-buil

Vue.js 基础学习 v-on 指令

在前面的基础学习中已经写了v-for和v-bind两个指令 今天学习v-on指令 v-on指令:用来绑定事件的body中 <div id="app"> </div> script中 var app = new Vue({ el : '#app', methods : { } }) 在div app中加入一个button并绑定一个点击事件 <button v-on:click="onClick">点我</button>

从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 十七 ║Vue基础:给博客首页加花样(二)

回顾 今天来晚辣,给公司做了一个小项目,一个瀑布流+动态视频控制的DEMO,有需要的可以联系我,公司的项目就不对外展示了(一个后端程序员真的要干前端了哈哈哈). 书接上文,昨天正式的开始了Vue的代码的学习,简单的通过一些假的数据来展示了下个人博客的首页列表,不知道大家是否还记得昨天讲的什么,如果不太清楚呢,可以再回顾下<从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 十七 ║Vue基础:使用Vue.js 来画博客首页(一)>,我们主要说到了,Vue的核心语法是什么,MVVM

salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件

在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的使用此标签进行解析附件内容,后台只要声明String类型变量用来存储附件名称,Blob类型变量用来存储附件的内容即可. 但是当我们的项目整体使用第三方的前端框架,例如VUE或者angular等前端框架时,有时使用apex:inputFile反而不是很方便,需要用到html的原生的附件上传的标签<inpu

零基础学习web前端,大神给你们指路

随着web前端的飞速发展,学习web前端的人员也是越来越多,在移动 互联网 时代,相信我们每个人的手机上都装有数十个APP,这些APP的开发其实也和当下热门的 Web 前端开发息息相关. 事实上,如今一半以上的APP都是采用Hybrid混合模式开发,即结合安卓和Web端技术开发.而纯 Web开发 的APP也不在少数,比如我们众所周知的 QQ 空间就是使用 Web前端 的React Native技术开发.除了APP,我们在手机端常看到的H5页面,也是主要运用了Web端的 HTML5 技术开发. 当