Vue mixin

 

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div id="app1">
        <h1>{{msg}}</h1>
        <h1>{{this.$options.age}}</h1>
    </div>
    <p>----------------------------</p>
    <div id="app2">
        <h1>{{msg}}</h1>
    </div>
    <script src="js/vue.3.2.2.js"></script>
    <script>
        //定义一个mixin对象
        const myMixin = {
            data(){//定义数据
                return {
                    msg:你好!
                }
            },
            methods:{
                hello(){
                    console.log("hello");
                }
            },
            mounted(){
                console.log("mounted");
            },
            age:100
        };
        // 1、创建Vue的实例对象
        const app1 = Vue.createApp({
            data(){//定义数据
                return {
                    msg:你好1!
                }
            },
            methods:{
                hello(){
                    console.log("hello1");
                }
            },
            mixins:[myMixin],
            age:99,
            mounted(){
                console.log("mounted1"+this.$options);
            }
        });
        //通过配置决定使用哪个属性
        app1.config.optionMergeStrategies.age = (mixinVal,appValue)=>{
            return mixinVal || appValue;
        }
        app1.mount(#app1);

        const app2 = Vue.createApp({
            // mixins:[myMixin]
        });
        app2.mixin({
            data(){//定义数据
                return {
                    msg:你好2!
                }
            },
            methods:{
                hello(){
                    console.log("hello");
                }
            },
            mounted(){
                console.log("mounted");
            },
            age:100
        });
        app2.mount(#app2);

    </script>
</body>
</html>

 

Vue mixin

上一篇:编译解释


下一篇:vs2008 wince 通过字符串对控件操作