zoukankan      html  css  js  c++  java
  • vue的mixins的使用

    mixins就是混入。

    一个混入对象可以包含任意组件选项。

    同一个生命周期,混入对象会比组件的先执行。

    1.创建一个test.js,用export暴露出mixins对象

    export const mixinsTest = {
        methods:{
            hello(){
                console.log("hello");
                
            }
        },
        created(){
            this.hello()
        }
    }

    2.在组件中引入这个mixins对象,通过mixins:[xxx],使用mixins对象

    <template>
    <div>
        home
    </div>
    </template>
    <script>
    import {mixinsTest} from '../util/test.js'
    export default {
      name: "Home",
      data () {
        return {
        };
      },
      created(){
          console.log("home");
          
      },
      //mixins的created会先被调用,然后再执行组件的created
      mixins:[mixinsTest]
    }
    </script>

    补充:

    可以混入多个mixins对象

    //暴露两个mixins对象
    export const mixinsTest = {
        methods: {
            hello() {
                console.log("hello mixins");
            }
        },
        created() {
            this.hello();
        },
    }
    
    
    export const mixinsTest2 = {
        methods:{
            hello2(){
                console.log("hello2");
            }
        },
        created() {
            this.hello2();
        },
    }

    组件中引入两个mixins对象

    <template>
    <div>
        home
    </div>
    </template>
    <script>
    import {mixinsTest,mixinsTest2} from '../util/test.js'
    export default {
      name: "Home",
      data () {
        return {
        };
      },
      created(){
          console.log("1212");
      },
      mixins:[mixinsTest2,mixinsTest] // 先调用那个mixins对象,就先执行哪个
     
    }
    </script>
    <style lang="css" scoped>
    </style>

    打印的顺序是:

  • 相关阅读:
    前端性能优化——写给网页设计师和前端工程师看的
    V8引擎——详解
    Perl_实用报表提取语言
    qs.stringify和JSON.stringify()
    js之history
    js考察this,作用域链和闭包
    css table之合并单元格
    js手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法
    windows 杀进程
    axios库的使用
  • 原文地址:https://www.cnblogs.com/luguankun/p/10849636.html
Copyright © 2011-2022 走看看