【Web - 框架 - Vue】随笔 - Vue的简单使用(02) - 快速上手

【Web - 框架 - Vue】随笔 - Vue的简单使用(02) - 快速上手

Vue模板代码

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue模板</title>
</head>
<body>
<div id="box"></div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {},
        methods: {}
    })
</script>
</body>
</html>

Vue插值语法

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue插值语法</title>
</head>
<body>
<div id="box">
    <p>name:{{name}}</p>
    <p>gender:{{gender}}</p>
    <p>9*9:{{9*9}}</p>
</div>
<hr>
<div id="box_1">
    <p>name:{{name}}</p>
    <p>gender:{{gender}}</p>
    <p>9*9:{{9*9}}</p>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            name: 'SUNxRUN',
            gender: 'man'
        },
    })
</script>
</body>
</html>

结果

Vue属性绑定语法

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue属性绑定语法</title>
</head>
<body>
<div id="box">
    <a :href="href">11</a>
    <a v-bind:href="href">22</a>
    <a href="9*9">33</a>
    <a :href="9*9">44</a>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            href: "https://www.baidu.com/"
        },
        methods: {}
    })
</script>
</body>
</html>

结果

Vue事件绑定语法

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue模板</title>
</head>
<body>
<div id="box">
    <button v-on:click="show">点我-01</button>
    <button @click="talk">点我-02</button>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {},
        methods: {
            show() {
                alert('啊啊啊啊')
            },
            talk: function () {
                alert('呀呀呀呀')
            }
        }
    })
</script>
</body>
</html>

结果


Vue事件参数

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue事件参数</title>
</head>
<body>
<div id="box">
    <button @click="choose">衣</button>
    <button @click="choose">食</button>
    <button @click="choose">住</button>
    <button @click="choose">行</button>
    <h3>以上选项哪个最重要:{{focus}}</h3>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            focus: '??'
        },
        methods: {
            choose(e) {
                var c = e.target.innerHTML
                this.focus = c
            }
        }
    })
</script>
</body>
</html>

结果


Vue事件传参

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue事件传参</title>
</head>
<body>
<div id="box">
    <button @click="add(10,20)">add</button>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        methods: {
            add(x, y) {
                alert(x + y)
            }
        }
    })
</script>
</body>
</html>

结果


Vue事件传参的混合模式

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue事件传参的混合模式</title>
</head>
<body>
<div id="box">
    <button data-x="10" @click="add(20,$event)">add</button>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        methods: {
            add(y, e) {
                alert(y - -e.target.dataset.x)
            }
        }
    })
</script>
</body>
</html>

结果


Vue显示与隐藏

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue显示与隐藏</title>
</head>
<body>
<div id="box">
    <button @click="x = true">显示</button>
    <button @click="x = false">隐藏</button>
    <p>x:{{x}}</p>
    <h1 v-show="x">Hello Vue!</h1>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            x: false
        },
        methods: {}
    })
</script>
</body>
</html>

结果


Vue'v-html'和'v-text'

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue'html'与'text'</title>
</head>
<body>
<div id="box">
    <div v-html="msg"></div>
    <div v-text="msg"></div>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            msg: '<h1>Hello Vue!</h1>'
        },
        methods: {}
    })
</script>
</body>
</html>

结果

Vue'v-once'

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue'v-once'</title>
</head>
<body>
<div id="box">
    <button @click="num++">+1</button>
    <p>num:{{num}}</p>
    <p v-once>num:{{num}}</p>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            num: 10
        },
        methods: {}
    })
</script>
</body>
</html>

结果

Vue'v-if'

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Vue'v-if'</title>
</head>
<body>
<div id="box">
    <p v-if="true">Hello</p>
    <p v-if="false">World!</p>
    <p v-show="false">Vue!</p>
    <hr>
    <button @click="num++">{{num}}</button>
    <p v-if="num % 2 == 1">奇数</p>
    <p v-else>偶数</p>
    <hr>
    <h4>打分:{{score}}</h4>
    <button @click="score += 10">+10</button>
    <p v-if="score < 60">删掉</p>
    <p v-else-if="score < 80">良好</p>
    <p v-else-if="score < 100">优秀</p>
    <p v-else>超限</p>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            num: 1,
            score: 0
        },
        methods: {}
    })
</script>
</body>
</html>

结果

Vue'v-for'

代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vue'v-for'</title>
</head>
<body>
<div id="box">
    <button v-for="n in names">{{n}}</button>
    <hr>
    <li v-for="s of skills">{{s}}</li>
    <hr>
    <a v-for="w in webs" :href="w.href">{{w.title}}<br></a>
</div>
<script src="vue.js"></script>
<script>
    new Vue({
        el: "#box",
        data: {
            names: ['关羽', '张飞', '刘备'],
            skills: ['html', 'css', 'javascript'],
            webs: [
                {title: '百度', href: 'https://www.baidu.com/'},
                {title: '斗鱼', href: 'https://www.douyu.com/'},
            ]
        },
        methods: {}
    })
</script>
</body>
</html>

结果

相关推荐
用户059540174462 小时前
把AI对话记忆存储测试从手工改成Playwright+pytest,覆盖率从20%提到96%,回归时间缩短90%
前端·css
kyriewen2 小时前
别再这样写TypeScript了——Code Review中最常见的8个反模式
前端·javascript·typescript
名字还没想好☜2 小时前
Next.js ‘use client‘ 到底加在哪:Server/Client Components 边界与常见报错
开发语言·前端·javascript·react·next.js
午安~婉2 小时前
GitHub Token/ GitHub Stats统计显示图异常
前端·github·vercel·github token
码云之上3 小时前
AI Agent 工程化总览篇:从 Prompt 到 Harness
前端·人工智能
2501_926978333 小时前
以说明书 DNA 为模板——完整 AGI 的结构图景
前端·人工智能·经验分享·笔记·ai写作
IT_陈寒3 小时前
Vite静态资源引用这个坑我踩得有点疼
前端·人工智能·后端
程序员黑豆4 小时前
鸿蒙应用开发:AttributeModifier 使用教程
前端·harmonyos
codeniu4 小时前
TRAE Work 实战 | 从"有个想法"到线上Demo,我全程只靠对话就完成了
前端·trae
妙码生花4 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十):增加管理员角色组管理
前端·后端·ai编程