• 视频总结 1


    class和style:
    :class="" v-bind:class=""
    :style="" v-bind:style=""

    :class="[red]" red是数据
    :class="[red,b,c,d]"

    :class="{red:a, blue:false}"

    :class="json"

    data:{
    json:{red:a, blue:false}
    }
    --------------------------
    style:
    :style="[c]"
    :style="[c,d]"
    注意: 复合样式,采用驼峰命名法
    :style="json"
    -----------------------------------------
    模板:
    {{msg}} 数据更新模板变化
    {{*msg}} 数据只绑定一次

    {{{msg}}} HTML转意输出

    style

    <head>
        <script>
            window.onload=function(){
                new Vue({
                    el:'#box',
                    data:{
                        a:{
                            color:'red',
                            backgroundColor:'gray'
                        }
                    },
                    methods:{
                    }
                });
            };
        </script>
    </head>
    <body>
        <div id="box">
            <strong :style="a">文字...</strong>
        </div>
    </body>
    :style

    CLASS

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>智能社——http://www.zhinengshe.com</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="apple-mobile-web-app-status-bar-style" content="black">
        <style>
            .red{
                color: red;
            }
            .blue{
                background: blue;
            }
        </style>
        <script src="vue.js"></script>
        <script>
            window.onload=function(){
                new Vue({
                    el:'#box',
                    data:{
                        red:'red',
                        b:'blue'
                    },
                    methods:{
                    }
                });
            };
        </script>
    </head>
    <body>
        <div id="box">
            <strong :class="[red,b]">文字...</strong>
        </div>
    </body>
    </html>
    :class="[red,b]"

    CLASS

    <head>
    
        <style>
            .red{
                color: red;
            }
            .blue{
                background: blue;
            }
        </style>
        <script src="vue.js"></script>
        <script>
            window.onload=function(){
                new Vue({
                    el:'#box',
                    data:{
                        json:{
                            red:true,
                            blue:true
                        }
                    },
                    methods:{
                    }
                });
            };
        </script>
    </head>
    <body>
        <div id="box">
            <strong :class="json">文字...</strong>
        </div>
    </body>
    :class DATA

    CLASS 

    <head>
        <meta charset="UTF-8">
        <style>
            .red{
                color: red;
            }
            .blue{
                background: blue;
            }
        </style>
        <script src="vue.js"></script>
        <script>
            window.onload=function(){
                new Vue({
                    el:'#box',
                    data:{
                        a:true,
                        b:false
                    },
                    methods:{
                    }
                });
            };
        </script>
    </head>
    <body>
        <div id="box">
            <strong :class="{red:a,blue:b}">文字...</strong>
        </div>
    </body>
    :class="{red:a,blue:b}"

    过滤器:-> 过滤模板数据
    系统提供一些过滤器:

    {{msg| filterA}}
    {{msg| filterA | filterB}}

    uppercase eg: {{'welcome'| uppercase}}
    lowercase
    capitalize

    currency 钱

    {{msg| filterA 参数}}


    事件:
    v-on:click/mouseover......

    简写的:
    @click="" 推荐

    事件对象:
    @click="show($event)"
    事件冒泡:
    阻止冒泡:
    a). ev.cancelBubble=true;
    b). @click.stop 推荐
    默认行为(默认事件):
    阻止默认行为:
    a). ev.preventDefault();
    b). @contextmenu.prevent 推荐
    键盘:
    @keydown $event ev.keyCode
    @keyup

    常用键:
    回车
    a). @keyup.13
    b). @keyup.enter
    上、下、左、右
    @keyup/keydown.left
    @keyup/keydown.right
    @keyup/keydown.up
    @keyup/keydown.down
    .....

     v-on:click="a=false"
    过滤器
     {{12|currency '¥'}}
      {{'WELCOME'|lowercase|capitalize}}
    <button class="btn btn-primary btn-sm" data-toggle="modal" data-target="#layer" v-on:click="nowIndex=$index">删除</button>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>智能社——http://www.zhinengshe.com</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="apple-mobile-web-app-status-bar-style" content="black">
        <style>
    
        </style>
        <link rel="stylesheet" href="lib/bootstrap.min.css">
        <script src="lib/jquery-1.7.2.js"></script>
        <script src="lib/bootstrap.js"></script>
    
        <script src="vue.js"></script>
        <script>
            window.onload=function(){
                new Vue({
                    el:'#box',
                    data:{
                        myData:[],
                        username:'',
                        age:'',
                        nowIndex:-100
                    },
                    methods:{
                        add:function(){
                            this.myData.push({
                                name:this.username,
                                age:this.age
                            });
    
                            this.username='';
                            this.age='';
                        },
                        deleteMsg:function(n){
                            if(n==-2){
                                this.myData=[];
                            }else{
                                this.myData.splice(n,1);
                            }
                        }
                    }
                });
            };
        </script>
    </head>
    <body>
        <div class="container" id="box">
            <form role="form">
                <div class="form-group">
                    <label for="username">用户名:</label>
                    <input type="text" id="username" class="form-control" placeholder="输入用户名" v-model="username">
                </div>
                <div class="form-group">
                    <label for="age">年 龄:</label>
                    <input type="text" id="age" class="form-control" placeholder="输入年龄" v-model="age">
                </div>
                <div class="form-group">
                    <input type="button" value="添加" class="btn btn-primary" v-on:click="add()">
                    <input type="reset" value="重置" class="btn btn-danger">
                </div>
            </form>
            <hr>
            <table class="table table-bordered table-hover">
                <caption class="h3 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 class="text-center" v-for="item in myData">
                    <td>{{$index+1}}</td>
                    <td>{{item.name}}</td>
                    <td>{{item.age}}</td>
                    <td>
                        <button class="btn btn-primary btn-sm" data-toggle="modal" data-target="#layer" v-on:click="nowIndex=$index">删除</button>
                    </td>
                </tr>
                <tr v-show="myData.length!=0">
                    <td colspan="4" class="text-right">
                        <button class="btn btn-danger btn-sm" v-on:click="nowIndex=-2" data-toggle="modal" data-target="#layer" >删除全部</button>
                    </td>
                </tr>
                <tr v-show="myData.length==0">
                    <td colspan="4" class="text-center text-muted">
                        <p>暂无数据....</p>
                    </td>
                </tr>
            </table>
    
            <!--模态框 弹出框-->
            <div role="dialog" class="modal fade bs-example-modal-sm" id="layer">
                <div class="modal-dialog">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal">
                                <span>&times;</span>
                            </button>
                            <h4 class="modal-title">确认删除么?</h4>
                        </div>
                        <div class="modal-body text-right">
                            <button data-dismiss="modal" class="btn btn-primary btn-sm">取消</button>
                            <button data-dismiss="modal" class="btn btn-danger btn-sm" v-on:click="deleteMsg(nowIndex)">确认</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </body>
    </html>
    v-on:click="nowIndex=$index"

    属性
    (k,v) in json
    <ul>
                <li v-for="value in arr">
                    {{value}}   {{$index}}
                </li>
            </ul>
            <hr> 
    <ul>
                <li v-for="(k,v) in json">
                    {{k}}   {{v}}   {{$index}}  {{$key}}
                </li>
            </ul>
    ...
    new Vue({
                    el:'#box',
                    data:{
                        arr:['apple','banana','orange','pear'],
                        json:{a:'apple',b:'banana',c:'orange'}
                    }
                });
    {{$index}} {{$key}}

    交互:
    $http (ajax)

    如果vue想做交互

    引入: vue-resouce

    get:
    获取一个普通文本数据:

    获取一个普通文本数据:
            this.$http.get('aa.txt').then(function(res){
                alert(res.data);
            },function(res){
                alert(res.status);
            });
            给服务发送数据:√
            this.$http.get('get.php',{
                a:1,
                b:2
            }).then(function(res){
                alert(res.data);
            },function(res){
                alert(res.status);
            });
    this.$http.get
    post
    this.$http.post('post.php',{
                a:1,
                b:20
            },{
                emulateJSON:true
            }).then(function(res){
                alert(res.data);
            },function(res){
                alert(res.status);
            });
    this.$http.post

    jsonp

    https://sug.so.360.cn/suggest?callback=suggest_so&word=a
    
            https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=a&cb=jshow
    
            this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
                wd:'a'
            },{
                jsonp:'cb'    //callback名字,默认名字就是"callback"
            }).then(function(res){
                alert(res.data.s);
            },function(res){
                alert(res.status);
            });
    View Code
  • 相关阅读:
    Django通用视图执行过程
    Django HTTP处理流程(自我总结)
    CentOS 安装MySQL5.7
    Python--定时给Ta讲笑话
    【转】对Django框架架构和Request/Response处理流程的分析
    Python模块发布
    Django中使用CKEditor代码高亮显示插件Code Snippet
    页面中的"返回顶部"(位置固定,指定位置显示/隐藏) Label:博客园美化
    跨域请求配置 Amazon AWS S3 腾讯云 阿里云 COS OSS 文件桶解决方案以及推荐 Label:Research
    文件分发服务器 AWS CloudFront(CDN)使用入门-以S3为例 Label:Research
  • 原文地址:https://www.cnblogs.com/zyjzz/p/9744390.html
Copyright © 2020-2023  润新知