前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue脚手架基础demo

vue脚手架基础demo

作者头像
红目香薰
发布2022-11-30 19:17:55
2860
发布2022-11-30 19:17:55
举报
文章被收录于专栏:CSDNToQQCode

vue脚手架基础demo


目录

vue脚手架基础demo

created_demo1示例

created_demo2示例

filters_demo3

v-once v-text_demo4

数据类型demo5

v-bind_demo6

:class_demo7

图片轮播_demo8

v-if v-else——demo9

按钮事件——demo10

选项卡demo11


created_demo1示例

代码语言:javascript
复制
<template>
    <div style="color: white;font-size: 3rem">
            {{ShowText}}
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                StrArray: ["北京第三区交通委提醒您:",
                    "道路千万条,",
                    "安全第一条,",
                    "行车不规范,",
                    "亲人两行泪。"
                ],
                index: 0,
                ShowText: ""
            }
    },
    created() {
                //复制自己,方便修改
                var _this = this;
                _this.ShodText = _this.StrArray[0];
                setInterval(() => {
                    _this.index++;
                    if (_this.index == 5) {
                        _this.index = 0;
                    }
                    _this.ShowText = this.StrArray[_this.index];
                }, 2000);
            }
}
</script>
    <style>
        #app {
            line-height: 200px;
            width: 600px;
            height: 200px;
            background-color: skyblue;
            border-radius: 20px;
            text-align: center;
            transition: 5s all;
        }
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

created_demo2示例

代码语言:javascript
复制
<template>
   <div style="color: white;font-size: 1.5rem">
            {{ShowText}}
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                ShowText: ""
            }
    },
    created() {
                //复制自己,方便修改
                setInterval(() => {
                    var times = "当前时间:";
                    var d = new Date();
                    var year = d.getFullYear();
                    var month = (d.getMonth() + 1).toString().padStart(2, '0');
                    var day = d.getDate().toString().padStart(2, '0');
                    var hour = d.getHours().toString().padStart(2, '0');
                    var min = d.getMinutes().toString().padStart(2, '0');
                    var se = d.getSeconds().toString().padStart(2, '0');
                    this.ShowText = times + year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + se;
                }, 1000);
            }
}
</script>
    <style>
        #app {
            line-height: 200px;
            width: 600px;
            height: 200px;
            background-color: skyblue;
            border-radius: 20px;
            text-align: center;
            transition: 5s all;
        }
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

filters_demo3

代码语言:javascript
复制
<template>
        <div>
            <input type="text" v-model="InText" placeholder="请输入过滤词" />
            <p>{{InText | FilterInText}}</p>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                InText: ""
            }
    },
    filters: {
                FilterInText: function(o) {
                    return o.replace('傻', '*');
                }
            }
}
</script>
    <style>
        #app {
            line-height: 200px;
            width: 600px;
            height: 200px;
            background-color: skyblue;
            border-radius: 20px;
            text-align: center;
            transition: 5s all;
        }
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

v-once v-text_demo4

代码语言:javascript
复制
<template>
        <div>
            <input type="text" v-model="Msg" />
            <p>{{Msg}}</p>
            <p v-once>{{Msg}}</p>
            <p v-text>{{Msg}}</p>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                Msg: "远方的梦想"
            }
    }
}
</script>
    <style>
        #app {
            line-height: 200px;
            width: 600px;
            height: 200px;
            background-color: skyblue;
            border-radius: 20px;
            text-align: center;
            transition: 5s all;
        }
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

数据类型demo5

parseInt格式化整数类型

代码语言:javascript
复制
<template>
        <div>
        <fieldset>
            <legend>个人工资计算器</legend>
            <p>基本工资:<input type="text" v-model="a1" /></p>
            <p>岗位工资:<input type="text" v-model="a2" /></p>
            <p>月度奖金:<input type="text" v-model="a3" /></p>
            <p>综合补贴:<input type="text" v-model="a4" /></p>
            <p>扣款金额:<input type="text" v-model="a5" /></p>
            <p>应发工资:{{parseInt(a1)+parseInt(a2)+parseInt(a3)+parseInt(a4)-parseInt(a5)}}元</p>
        </fieldset>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                a1: 0,
                a2: 0,
                a3: 0,
                a4: 0,
                a5: 0
            }
    }
}
</script>
    <style>
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

v-bind_demo6

 “:” 是指令 “v-bind”的缩写

代码语言:javascript
复制
<template>
        <div>
            <img :src="img1" :style="sty1" />
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                img1: "https://img-blog.csdnimg.cn/2ef5964ce6c641da87db1a4419aa07d8.png",
                sty1: "width:250px;height:400px;border-radius:50%"
            }
    }
}
</script>
    <style>
        
        #app:hover {
            transition: 5s all;
            background-color: pink;
            border-radius: 50%;
            border: 5px double red;
        }
    </style>

:class_demo7

绑定样式

代码语言:javascript
复制
<template>
        <div>
        <input type="checkbox" v-model="state1" />文字颜色
        <input type="checkbox" v-model="state2" />背景颜色
        <input type="checkbox" v-model="state3" />文字大小
        <input type="checkbox" v-model="state4" />边框
        <input type="checkbox" v-model="state5" />边框圆角
        <input type="checkbox" v-model="state6" />居中
        <hr/>
        <p v-bind:class="{co:state1,bgc:state2,fs:state3,bor:state4,boru:state5,cen:state6}">风云·雄霸天下</p>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                state1: false,
                state2: false,
                state3: true,
                state4: false,
                state5: false,
                state6: false
            }
    }
}
</script>
    <style>
        .co {
            color: red;
            transition: 2s all;
        }
        
        .bgc {
            background-color: pink;
            transition: 2s all;
        }
        
        .fs {
            font-size: 2rem;
            transition: 2s all;
        }
        
        .bor {
            border: 2px solid skyblue;
            transition: 2s all;
        }
        
        .boru {
            border-radius: 50px;
            transition: 2s all;
        }
        
        .cen {
            text-align: center;
            transition: 2s all;
        }
    </style>

图片轮播_demo8

图片会每2.5秒更换一张

代码语言:javascript
复制
<template>
        <div>
            <img :src="url" style="width:400px;height:400px;" />
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                UrlArray: [
                    "https://img-blog.csdnimg.cn/2ef5964ce6c641da87db1a4419aa07d8.png",
                    "https://gd-hbimg.huaban.com/62272f15b1e5688d34dbda4329aca2e87a3c4cb02755e-m4GyqS_fw240webp",
                    "https://gd-hbimg.huaban.com/da6369148e013233f191a9b0a0ce8b64c94d52871a9e8b-oA9BTm_fw240webp",
                    "https://gd-hbimg.huaban.com/38da95669436902fe92a34b5af6a67ca777d1a372d477-U83Ijg_fw240webp",
                    "https://gd-hbimg.huaban.com/eb68b53436241e3003fa350b4ca2fb8c55cf224145f3a8-UA4z33_fw240webp",
                    "https://gd-hbimg.huaban.com/a92746f0400e6af2aa863866343abc60e4fbd1cd24126-CCihy1_fw240webp",
                    "https://gd-hbimg.huaban.com/9830dc6dbba93ca8f2b3cf9a4acfa520d239948936cdb-L7wsf7_fw240webp",
                    "https://gd-hbimg.huaban.com/f8b0a09bddb0f0d2336297ef2d1dddacc348881e95d34-GVgBa3_fw240webp",
                    "https://gd-hbimg.huaban.com/c30cc07930dd1836ed5bb80f66594925c010aa3f12670-RcYPuu_fw240webp",
                    "https://gd-hbimg.huaban.com/19245080ce098c73b47ae37384263b8ff603d4c3df3394-N9O7Qs_fw240webp",
                    "https://gd-hbimg.huaban.com/11cc94621656f786002448c5007d259bb6397bf1d221-W9p8JJ_fw240webp",
                    "https://gd-hbimg.huaban.com/d60130b066cd98f81cb3fd852d2c3504d4ce5cd8388f8-oKCIke_fw240webp"
                ],
                index: 0,
                url: ""
            }
    },
            created() {
                //影分身之术
                var _this = this;
                _this.url = _this.UrlArray[0];
                //判断循环
                setInterval(() => {
                    _this.index++;
                    if (_this.index == _this.UrlArray.length) {
                        _this.index = 0;
                    }

                    _this.url = _this.UrlArray[_this.index];
                }, 2500);
            }
}
</script>

v-if v-else——demo9

未选中状态

选中状态

代码语言:javascript
复制
<template>
        <div>
        <input type="checkbox" v-model="isf">登录/注册<br/>
        <hr/>
        <div v-if="isf">
            <p>
                账号:<input type="text" placeholder="请输入账号" />
            </p>
            <p>
                密码:<input type="text" placeholder="请输入密码" />
            </p>
            <p>
                二次密码:<input type="text" placeholder="请输入二次密码" />
            </p>
            <p><button>注册</button></p>
        </div>
        <div v-else>
            <p>
                账号:<input type="text" placeholder="请输入账号" />
            </p>
            <p>
                密码:<input type="text" placeholder="请输入密码" />
            </p>
            <p><button>登录</button></p>
        </div>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        return {
                isf: false
            }
    }
}
</script>

按钮事件——demo10

代码语言:javascript
复制
<template>
        <div>
            <p v-on:click="test1">你是一个好人</p>
            <p v-on:click="test2">你是俩个好人</p>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        
    },
                methods: {
                test1: function() {
                    alert("你确定是一个好人,但是咱们不合适。");
                },
                test2: function() {
                    alert("你确定是两个好人,但是咱们不合适。");
                }
            }
}
</script>

选项卡demo11

代码语言:javascript
复制
<template>
        <div id="show">
            <div class="divs">
                <!--选项卡一-->
                <div class="btn" v-on:click="choose(1)">选项卡一</div> &nbsp;
                <!--选项卡二-->
                <div class="btn" v-on:click="choose(2)">选项卡二</div>
            </div>
            <div style="clear:both"></div>
            <div id="one" style="color: red">我是选项卡一的内容</div>
            <div id="two" style="color: skyblue;display: none;">我是选项卡二的内容</div>
        </div>
</template>
<script>
export default {
    name:"demo1",
    data:function(){
        
    },
            created() {
                document.getElementById("two").style.display = "";
            },
            methods: {
                choose: function(o) {
                    if (o == "1") {
                        document.getElementById("one").style.display = "";
                        document.getElementById("two").style.display = "none";
                    } else {
                        document.getElementById("one").style.display = "none";
                        document.getElementById("two").style.display = "";
                    }
                }
            }
}
</script>
    <style>
    #show{
        width:80%;
        font-size: 1.2rem;
    }
        .divs div {
            float: left;
        }
        .btn{
            border:1px solid red;
            margin-left: 50px;
        }
        #one,#two{
            border:1px solid black;
            height: 200px;
        }
    </style>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • vue脚手架基础demo
  • created_demo1示例
  • created_demo2示例
  • filters_demo3
  • v-once v-text_demo4
  • 数据类型demo5
  • v-bind_demo6
  • :class_demo7
  • 图片轮播_demo8
  • v-if v-else——demo9
  • 按钮事件——demo10
  • 选项卡demo11
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档