zoukankan      html  css  js  c++  java
  • Vue.extend(options)小例子

    本例利用 Vue.extend() 实现左侧input 框中输入文本,动态加载组件。

    <!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>Vue.extend(options)</title>
        <script src="vue.js"></script>
        <style>
            div{
                 200px;
                height: 100px;
                background-color: #eee;
                padding: 50px;
                border-radius: 10px;
                border: 1px solid #ddd;
                color: #000;
            }
            #alert{
                position: absolute;
                text-align: center;
                animation: alertComp 1s ease both;
            }
            @keyframes alertComp {
                from{
                    top: 100px;
                    left: 50px;
                }
                to{
                    top: 200px;
                    left: 50%;
                    transform: translateX(-50%);
                }
            }
        </style>
    </head>
    <body>
        <div id="app">
            <input type="text" v-model='msg'>
            <button @click='defin_alert'>点击</button>
        </div>
        <template id='alertComponent'>
            <div id="alert">
                我是动态组件:<br/>
                <span style="color:burlywood;font-size: 36px;">{{myData}}</span>
            </div>
        </template>
    </body>
    <script>
        const vm = new Vue({
            el:'#app',
           data() {
               return {
                   msg:'ok'
               }
           },
            methods: {
                defin_alert(){
                    let info = document.getElementById('alert')
                    if(info !== null && info !== undefined){
                        document.body.removeChild(info)
                    }
                    let testComponent = Vue.extend({
                        props:['myData'],
                        template:'#alertComponent'
                    })
                    
                    const extendComponent = new testComponent({
                        propsData:{
                            myData:vm.msg
                        }
                    }).$mount()
                    document.body.appendChild(extendComponent.$el)
                }
            },
        })
    </script>
    </html>
    
    
  • 相关阅读:
    3月16日
    11月8日
    Code4 APP
    为什么alertView弹出后button会消失的问题
    设置某个类使用或者禁用ARC
    Bundle使用&NSBundle
    respondsToSelector
    NSDate获取当前时区的时间
    iOS enum 定义与使用
    IOS开发之纯代码界面--基本控件使用篇 ┊
  • 原文地址:https://www.cnblogs.com/springyoung/p/14531638.html
Copyright © 2011-2022 走看看