美文网首页
玩转Vue_render函数

玩转Vue_render函数

作者: 伍陆柒_ | 来源:发表于2019-06-26 22:49 被阅读0次

    新创建一个html,利用之前学过的组件注册完成渲染

    <!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>Document</title>
    </head>
    <body>
        <div id='app'>
            <login></login>
        <div>
        
        <script src='./js/vue.js'></script>
        <script>
    
            const login = {
                template : '<h1>这是一个登录组件</h1>'
            }
    
            const vm = new Vue({
                el : '#app', // vue实例控制的区域,称为 挂载元素
                data : {},
                methods: {},
                components : {
                    login
                }
            })
        </script>
    </body>
    </html>
    

    使用render函数也可以渲染组件

    <!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>Document</title>
    </head>
    <body>
        <div id='app'>
            <p>3333</p>
        <div>
        
        <script src='./js/vue.js'></script>
        <script>
    
            const login = {
                template : '<h1>这是一个登录组件</h1>'
            }
    
            const vm = new Vue({
                el : '#app', // vue实例控制的区域,称为 挂载元素
                data : {},
                methods: {},
                render(createElement) {
                    return createElement(login)
                },
            })
        </script>
    </body>
    </html>
    

    区别 : 使用render渲染的组件会完全替换el挂载元素中的内容,而第一种方法不会(看不见p标签中的333,因为被替换了)

    相关文章

      网友评论

          本文标题:玩转Vue_render函数

          本文链接:https://www.haomeiwen.com/subject/vqnhcctx.html