我是小白,大佬带带 2022-10-27 14:58 采纳率: 0%
浏览 39

v-if 的判断问题,是如何进行判断的

问题遇到的现象和发生背景 在vue文档中练习 v-if 的时候用" template " 和 自定义模板时产生的结果不一样

这是用 template 运行的

        <div id="panduan">
            
            <h1 v-if="awesome">Vue is awesome!</h1>
            <h1 v-else>Oh no 😢</h1>
            
            <template v-if="ok">
              <h1>Title</h1>
              <p>Paragraph 1</p>
              <p>Paragraph 2</p>
            </template>


        <script>
            var vm = new Vue({
                el:"#panduan",
                data:{
                    awesome:false,
                    ok:true
                }
            })
        </script>
            
        </div>

结果如下

img

这是用 自定义组件 运行的

<div id="panduan">
            
            <h1 v-if="awesome">Vue is awesome!</h1>
            <h1 v-else>Oh no 😢</h1>
            
            <aaa v-if="ok">
              <h1>Title</h1>
              <p>Paragraph 1</p>
              <p>Paragraph 2</p>
            </aaa>
            
        </div>
        
        <script>
            Vue.component('aaa',{
                template:'
                <h1>Title</h1>
                <p>Paragraph 1</p>
                <p>Paragraph 2</p>
                '
            })
            var vm = new Vue({
                el:"#panduan",
                data:{
                    awesome:false,
                    ok:true
                }
            })
        </script>

结果如下

img

我认为不管是 template 或者是自定义组件编译结果应该都是一样的吧

  • 写回答

3条回答 默认 最新

  • 崽崽的谷雨 2022-10-27 15:50
    关注
    
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    
    <body>
        <div id="panduan">
    
            <h1 v-if="awesome">Vue is awesome!</h1>
            <h1 v-else>Oh no 😢</h1>
    
            <aaa v-if="ok">
                <h1>Title</h1>
                <p>Paragraph 1</p>
                <p>Paragraph 2</p>
            </aaa>
    
        </div>
    
    </body>
    
    <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14"></script>
    <script>
        Vue.component('aaa', {
            template: '<div><h1> Title</h1><p>Paragraph 1</p><p>Paragraph 2</p></div>'
    
        })
        var vm = new Vue({
            el: "#panduan",
            data: {
                awesome: false,
                ok: true
            }
        })
    </script>
    
    </html>
    
    评论

报告相同问题?

问题事件

  • 创建了问题 10月27日

悬赏问题

  • ¥15 用C语言写离散数学相关问题
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
  • ¥15 ansys机翼建模肋参数
  • ¥15 Sumo软件无法运行
  • ¥15 如何在vscode里搭建stata的编辑环境?
  • ¥15 dify知识库创建问题
  • ¥15 如何用C#的chart画1000万个点不卡顿
  • ¥15 爬虫技术找到网上看过房源客户的电话
  • ¥20 代码:Python随机森林反演生物量数据处理问题
  • ¥15 Linux系统的命令行窗口回车变成了换行,无法执行命令了