《Vue学习笔记》-组件-组件切换的方式及相关细节

news/2024/7/10 2:08:37 标签: Vue

目录

Vue%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E3%80%8B-%E7%BB%84%E4%BB%B6-%E5%88%9B%E5%BB%BA%E7%BB%84%E4%BB%B6%E7%9A%84%E6%96%B9%E5%BC%8F%E5%8F%8A%E7%9B%B8%E5%85%B3%E7%BB%86%E8%8A%82-toc" style="margin-left:0px;">《Vue学习笔记》-组件-组件切换的方式及相关细节

1.组件切换-方式1

2.组件切换方式2-1(简单例子)

3.组件切换方式2-2(复杂例子)

 

 


Vue%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%E3%80%8B-%E7%BB%84%E4%BB%B6-%E5%88%9B%E5%BB%BA%E7%BB%84%E4%BB%B6%E7%9A%84%E6%96%B9%E5%BC%8F%E5%8F%8A%E7%9B%B8%E5%85%B3%E7%BB%86%E8%8A%82">《Vue学习笔记》-组件-组件切换的方式及相关细节

1.组件切换-方式1

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>title</title>
    <script src="./lib/vue-2.4.0.js"></script>
</head>

<body>


    <div id="app">
        <!--修饰符prevent的作用是阻止默认行为的发生,stop是阻止冒泡事件的发生-->
        <a href="" v-on:click.prevent="flag=true">登录</a>
        <a href="" v-on:click.prevent="flag=false">注册</a>
        <login v-if="flag"></login>
        <register v-else="flag"></register>
    </div>
    <script>
        Vue.component('login', {
            template: '<h3>登录组件</h3>'
        })
        Vue.component('register', {
            template: '<h3>注册组件</h3>'
        })

        var vm = new Vue({
            el: '#app',
            data: {
                flag: true
            },
            methods: {}
        })
    </script>


</body>

</html>

2.组件切换方式2-1(简单例子)

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>title</title>
    <script src="./lib/vue-2.4.0.js"></script>
</head>

<body>


    <div id="app">
        <!--Vue提供了component,来展示对应名称的组件-->
        <!--component 是一个占位符,:is是属性,用来指定要展示的组件的名称-->
        <!-- 注意:is不能跟字符串 -->
        <component :is="'login'"></component>

    </div>
    <script>
        Vue.component('login', {
            template: '<h3>登录组件</h3>'
        })
        Vue.component('register', {
            template: '<h3>注册组件</h3>'
        })

        var vm = new Vue({
            el: '#app',
            data: {
                flag: true
            },
            methods: {}
        })
    </script>


</body>

</html>

注意:方式2-2只是在方式2-1的基础上,添加一些代码

3.组件切换方式2-2(复杂例子)

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>title</title>
    <script src="./lib/vue-2.4.0.js"></script>
</head>
<!--从14-1过渡到14-2,从简单实例到复杂实例-->
<!--总结:vue提供的标签
    component,template,transition,transitionGroup
-->

<body>


    <div id="app">
        <a href="" @click.prevent="conName='login'">登录</a>
        <a href="" @click.prevent="conName='register'">注册</a>
        <!--Vue提供了component,来展示对应名称的组件-->
        <!--component 是一个占位符,:is是属性,用来指定要展示的组件的名称-->
        <!-- 注意:is不能跟字符串 -->
        <component :is="conName"></component>

    </div>
    <script>
        Vue.component('login', {
            template: '<h3>登录组件</h3>'
        })
        Vue.component('register', {
            template: '<h3>注册组件</h3>'
        })

        var vm = new Vue({
            el: '#app',
            data: {
                conName: 'login'
            },
            methods: {}
        })
    </script>


</body>

</html>

 

 


http://www.niftyadmin.cn/n/1435326.html

相关文章

GTK:背景图

参考链接&#xff1a; GTK进阶学习&#xff1a;设置窗口背景图(可指定其大小) 代码&#xff1a; #include <gtk/gtk.h> #include <stdio.h> #include <stdbool.h> #include <string.h>#define WIDTH 200*2 #define HIGHT 141*2void back(GtkWidget *w…

《Vue学习笔记》-组件-父子组件传值的方式及相关细节

目录 《Vue学习笔记》-组件-父子组件传值的方式及相关细节 1.父组件向子组件传值的方式 2.组件-父组件把方法传递给子组件-1 3.组件-父组件把方法传递给子组件-2&#xff08;增加子组件向父组件传值&#xff09; 《Vue学习笔记》-组件-父子组件传值的方式及相关细节 1.父组…

Tool:linux查看系统信息脚本

参考链接&#xff1a; https://linux.cn/article-11645-1.html #!/bin/bashecho -e "-------------------------------System Information----------------------------"echo -e "Hostname:\t\t"hostnameecho -e "uptime:\t\t\t"uptime | awk {p…

《Vue学习笔记》--组件--组件案例-评论列表

《Vue学习笔记》--组件--组件案例-评论列表 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv&q…

QT:国际化总结

以下内容只是自己调试过程中的总结&#xff0c;不保证全部正确&#xff0c;大家斟酌参考。 参考链接&#xff1a; https://blog.csdn.net/sunarmy/article/details/54097682 1、支持语言家。 为了能让Qt语言家 可以识别。需要在.pro文件中添加&#xff1a; TRANSLATIONS te…

QT:自定义实现 getExistingDirectory _ Qt 汉化不完全问题

参考链接&#xff1a; https://blog.csdn.net/xdw_it/article/details/80283036 https://blog.csdn.net/yu5611789/article/details/7569238 使用 QFileDialog::getExistingDirectory 可以弹出对话框&#xff0c;返回用户选中的目录&#xff0c;返回类型为QString。 下面是Q…

Python:判断输入的是否是数字

参考链接&#xff1a; https://www.cnblogs.com/zxmbky/p/9160822.html 代码&#xff1a; #!/usr/bin/python3num1 input("first num :").strip() num2 input("second num: ").strip()if not num1.replace(".",).isdigit():exit("fist…

Python:简单程序记录

题目来自菜鸟教程: Python3 实例 Python Hello World 实例 代码&#xff1a; #!/usr/bin/python3 print("Hello World !") 执行&#xff1a; adamsadams$ python 01_helloworld.py Hello World ! adamsadams$ Python 数字求和 代码&#xff1a; #!/usr/b…