当前位置: 首页 > article >正文

【VUE】快速上手

一、快速上手

  • 创建HTML文件+引入vue.js
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/vue/3.3.4/vue.global.prod.js"></script>
  • 按照vue.js的语法编写代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/3.3.4/vue.global.prod.js"></script>
</head>
<body>
<div id="app">
    <h1>欢迎光临红浪漫,尊贵的VIP:{{ name }}, 余额{{ balance }}</h1>
    <button @click="doCharge">点击充值</button>
    <button @dbclick="doCharge2">双击充值</button>
</div>

<script>
    var app = Vue.createApp({
        data: function () {
            return {
                name: "cqn",
                balance: 199
            }
        },
        methods:{
            doCharge: function () {
                this.name = 'zkf'
                this.balance = 299
            },
            doCharge2: function () {
                this.balance = this.balance + 1000
            }
        }
    });
    app.mount("#app")
</script>
</body>
</html>

vue语法操作和传统方式页面的操作的区别:

  • 传统方式页面功能:DOM中寻找标签+操作
  • vue.js的页面功能:js变量 <-> DOM中标签进行双向绑定,修改js中的变量,页面内容会实时发生变化
<div id="city">
    <h1>中国北京</h1>
</div>

<script>
    v1 = document.getElementById("city")
    v1.innerText="广东深圳"
</script>

二、组合式和选项式

Vue3支持的两种开发模式API:组合式和选项式

  • 选项式:简单,容易上手,需要使用this获取data-return中返回的值
	Vue.createApp({
	    data:...
	    methods:...
	})
  • 组合式:修改变量时同步至页面,变量设置时,需要加Vue.ref(“”),变量读取时,需要加.value,修改时,也要加.value
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/3.3.4/vue.global.prod.js"></script>
</head>
<body>
<div id="bob">
    <h1>欢迎光临红浪漫,尊贵的VIP:{{ name }}, 余额{{ balance }}</h1>
    <button @click="doCharge">点击充值</button>
    <button @dbclick="doCharge2">双击充值</button>
</div>

<script>
    var bob = Vue.createApp(
        {
            setup: function () {
                var name = "cqn"
                var balance = Vue.ref(1000)

                var doCharge = function () {
                    balance.value = 9999
                    console.log(name, balance.value)
                }
                var doCharge2 = function () {
                    console.log(name, balance.value)
                }
                return {name, balance, doCharge, doCharge2}
            }
        }
    );
    bob.mount("#bob")
</script>
</body>
</html>

  • 解包
    var Vue = {name: "cqn", age: 19, email: "xxx"}
    var {name, age} = Vue
    console.log(name, age)

	const {createApp, ref} = Vue
  • 导包
import {createApp, ref} from 'ttt.js'
  • 常量和变量
    • 变量:var name = “cqn” // 可以被修改 name = ‘zkf’
    • 常量:const age = 19 // 不可以被修改 age = 18 -> 不支持
    • 常量:const info = { v1:19, v2:30 } // info = {} ->不支持,但是info.v1=18支持

http://www.kler.cn/news/309935.html

相关文章:

  • 企业CAD图纸防泄密措施有哪些?10个真实有效方法分享
  • Science Robotics 在小动物模型中实现渐进和可逆主动脉收缩的软机器人平台
  • 202409011在飞凌的OK3588-C的核心板跑Rockchip原厂的Android12时挂载触摸屏ft5x06之后使用i2c-tools检测
  • 「DAOI R1」Magic
  • gitee远程仓库OPEN GIT BASH HERE从错误中学习
  • 形式向好、成本较低、可拓展性较高的名厨亮灶开源了
  • 打通最后一公里:使用CDN加速GitHub Page的访问
  • 分享一个基于微信小程序的居家养老服务小程序 养老服务预约安卓app uniapp(源码、调试、LW、开题、PPT)
  • No module named MYSQLdb 问题解决
  • 《深度学习》—— PyTorch的神经网络模块中常用的损失函数
  • Unity 百度AI实现无绿幕拍照抠像功能(详解版)
  • Flask-JWT-Extended登录验证
  • 构建常态化安全防线:XDR的态势感知与自动化响应机制
  • python学习笔记目录
  • JS全选反选案例
  • 海杂波分级方法
  • springboot项目中 前端浏览器访问时遇到跨域请求问题CORS怎么解决?has been blocked by CORS policy
  • 【UEFI基础】BIOS模块执行的优先级
  • 集成网口连接器国产化替代--RJ45内置网络变压器网口生产工厂在行动
  • HarmonyOS学习(十一)——安全管理
  • 说说synchronized的锁升级过程
  • 请求转发和重定向的区别
  • Eureka原理与实践:构建高效的微服务架构
  • 宠物空气净化器该怎么选?希喂、352、霍尼韦尔哪款对吸附浮毛有效
  • Python协程详解
  • uniapp中使用uni.$emit和uni.$on在vue和nvue页面之间传值但是无法赋值的问题
  • HarmonyOS 实现自定义启动页
  • 鸿蒙开发协调布局CollapsibleLayout
  • Unity3d 以鼠标位置点为中心缩放视角(正交模式下)
  • 待办: 杂七杂八——大杂烩.....懒得整理了,我自己凑合看