【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>

结果

相关推荐
IT_陈寒1 小时前
Python开发者必知的5大性能陷阱:90%的人都踩过的坑!
前端·人工智能·后端
codingWhat2 小时前
介绍一个手势识别库——AlloyFinger
前端·javascript·vue.js
Lee川2 小时前
深度拆解:基于面向对象思维的“就地编辑”组件全模块解析
javascript·架构
代码老中医2 小时前
2026年CSS彻底疯了:这6个新特性让我删掉了三分之一JS代码
前端
进击的尘埃2 小时前
Web Worker 与 OffscreenCanvas:把主线程从重活里解放出来
javascript
不会敲代码12 小时前
Zustand:轻量级状态管理,从入门到实践
前端·typescript
踩着两条虫2 小时前
VTJ.PRO 双向代码转换原理揭秘
前端·vue.js·人工智能
扉川川2 小时前
OpenClaw 架构解析:一个生产级 AI Agent 是如何设计的
前端·人工智能
远山枫谷2 小时前
一文理清页面/组件通信与 Store 全局状态管理
前端·微信小程序
codingWhat2 小时前
手撸一个「能打」的 React Table 组件
前端·javascript·react.js