首页 > 其他分享 >01-初始Vue

01-初始Vue

时间:2024-04-24 16:48:50浏览次数:25  
标签:username arr 01 vue vm --- Vue 初始

官网

https://cn.vuejs.org/

MVVM架构

MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,是一种事件驱动编程方式

  • Model :vue对象的data属性里面的数据,这里的数据要显示到页面中
  • View :vue中数据要显示的HTML页面,在vue中,也称之为“视图模板” (HTML+CSS)
  • ViewModel:vue中编写代码时的vm对象,它是vue.js的核心,负责连接 View 和 Model数据的中转,保证视图和数据的一致性,所以前面代码中,data里面的数据被显示中p标签中就是vm对象自动完成的(双向数据绑定:JS中变量变了,HTML中数据也跟着改变)

点我查看

快速使用

<!-- vue3 的cdn -->
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>

<!-- vue2 的cdn -->
<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>

hello 小满

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="../vue/vue2.js"></script>
</head>
<body>
    <div id="app">  <!-- 所有的代码都需要写道这个div内部 -->
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",  <!-- 和你上面定义的关联,如果是类用. 一般用id -->
        data: {
			<!-- 这里放变量 -->
        },
        methods: {
			<!-- 这里放方法 -->
    })
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue第一天</title>
    <script src="../vue/vue2.js"></script>
</head>
<body>
    <div id="app">
        <h1>你好,欢迎来到{{ username }}的博客</h1>
        <img src="https://i.pinimg.com/564x/f1/f5/67/f1f567512a146f9321cda22319277a7a.jpg" height="100">
        <p>尝试打开一个网站:{{a}} , 不能解析。</p>
        <h3>正确的解析方式,使用v-html </h3>
        <p><span v-html="a"></span> --- v-html不仅可以解析标签,也可以解析文本 ---<span v-html="content"></span></p>
        <h3>如果要获取一个对象里面的数据,直接通过 . 获取即可</h3>
        <p>username: {{userinfo.username}} , hobby: {{userinfo.hobby}}</p>
        <hr>
        <h3>vue是双向修改的,也就是如果我通过浏览器的控制台打开去修改,页面能让会里面去修改。</h3>
        <p>成功将h1的标题修改为:{{username="海月"}}</p>
        <hr>
        <p>数字和运算:{{age}}  ---   {{1+2+3}}</p>
        <p>数组和对象:{{arr}}  ---   {{arr[2].book}} {{arr[3]}} </p>
        <p>三目运算符:29<24吗?{{29<24?"真":"假"}},格式是:条件?真:假</p>
        <hr>
        <h3>可以通过v-show来显示或者隐藏</h3>
        <p v-show="false">一来二去,看你三四五六眼,想你七八九十遍。</p>
        <p v-if="false">我爱你,与你无关。</p>
        <p v-text="content"></p>
        <h3>方法全部放到methods下面</h3>
        <button v-on:click="task">点我有惊喜</button>
        <button @click="task">点我有惊喜</button>
        <h3>v-bind</h3>
        <p><a v-bind:href="aHref" v-bind:style="{'color': 'tomato'}">点击进入小满的博客园</a></p>
    </div>
</body>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            username: "小满",
            userinfo: {username: "大乔", hobby: "摸鱼"},
            a: '<a href="https://caniuse.com/">Can I Use</a>',
            age: 3,
            arr:["海边的卡夫卡", "村上春树", {book: "活着"}, true, false],
            content: "喜欢你又凶又美,又甜又烈",
            aHref: 'https://www.cnblogs.com/ccsvip/'
        },
        methods: {
            task() {
                alert("小满三岁啦!")
            },
        },
    })
</script>
</html>

image-20240424154314269

image-20240424145113460

image-20240424150945777

通过v-if 实现真正的隐藏

img

今日思维导图

01-初始Vue

标签:username,arr,01,vue,vm,---,Vue,初始
From: https://www.cnblogs.com/ccsvip/p/18155792

相关文章

  • vue 省市区三级联动插件
    首先是官网地址https://www.npmjs.com/package/element-china-area-data?activeTab=readme其次是个人应用vue部分<el-cascadersize="large":options="options"v-model="selectedOptions"></el-cascade......
  • 代码$display("%h",14'bx0_1010)的输出结果是()
    选项:A、xxxaB、xxXaC、XXXaD、XXxa答案:B解析:  如果输出列表中表达式的值包含有不确定的值或者是高阻值,且在输出格式为十六进制的情况下,其结果输出遵循以下原则:(1)每四位二进制数为一组代表一位十六进制数;(2)如果表达式值相对应的某进制数的部分位为不定值,则该位进制数输......
  • Vue项目报错,点击浏览器报错信息定位不到报错代码,该如何优雅地调试代码?
    一、背景通过vue-cli服务运行项目,项目运行一切正常。但打包后,通过nginx部署运行,大屏展示模块报echartstypeError错误。但是点击浏览器报错信息,定位到的位置代码根本看不懂。经过一番寻找,发现打包时,webpack配置产生源码的属性为false。这样就会导致,打包后代码经过压缩加密,出现报......
  • vue3大屏适配
    1、定义初始化比例letstyle=ref({//定义默认比例width:1920,height:1080,transform:"scaleY(1)scaleX(1)translate(-50%,-50%)"})2、获取屏幕的宽高比列对象letgetScale=()=>{//获取屏幕的宽高比列constw=window.innerWidth/style.va......
  • [Vue3+Element-Plus]点击列表中的图片预览时,图片被表格覆盖
    preview-teleported="true" <el-table-columnprop="id"label="ID"width="80"align="center"sortable/><el-table-columnlabel="商品图片"width="85px"><template#default=&q......
  • PeLK:101 x 101 的超大卷积网络,同参数量下反超 ViT | CVPR 2024
    最近,有一些大型内核卷积网络的研究,但考虑到卷积的平方复杂度,扩大内核会带来大量的参数,继而引发严重的优化问题。受人类视觉的启发,论文提出了外围卷积,通过参数共享将卷积的复杂性从\(O(K^{2})\)降低到\(O(\mathrm{log}K)\),有效减少90%以上的参数数量并设法将内核尺寸扩大到......
  • Vue-cli 将px转化为rem适配移动端
    vue-cli2版本配置1.下载lib-flexible我使用的是vue-cli+webpack,所以是通过npm来安装的npmilib-flexible--save2.引入lib-flexible在main.js中引入lib-flexibleimport'lib-flexible/flexible'3.设置meta标签通过meta标签,设置设备宽度以及缩放比例<metaname="viewport......
  • vue tab切换滑动门
    <scriptsetuplang="ts">import{ref}from"vue";constselectName=ref('技术指标及标准')constnacigation=ref(['技术指标及标准','文献著作','报告模版','专家库/项目库',])</script><template&......
  • [CSP-J2019] 数字游戏
    [CSP-J2019]数字游戏题目描述小K同学向小P同学发送了一个长度为8的01字符串来玩数字游戏,小P同学想要知道字符串中究竟有多少个1。注意:01字符串为每一个字符是0或者1的字符串,如101为一个长度为3的01字符串。输入格式输入文件只有一行,一个长度为8的0......
  • Cisco Catalyst 9800 Wireless Controller, IOS XE Software Release IOSXE-17.14.01
    CiscoCatalyst9800WirelessController,IOSXESoftwareReleaseIOSXE-17.14.01EDCatalyst9800系列无线控制器软件请访问原文链接:CiscoCatalyst9800WirelessController,IOSXESoftwareReleaseIOSXE-17.14.01ED,查看最新版。原创作品,转载请保留出处。作者主页:sy......