Vue 中mixins,extends,class簡單使用


Vue 中mixins,extends,class簡單使用

demo:  index.vue, feiMixins,feiExtends,feiClass 四個文件

index.vue

<template>
    <div id="index">
        <div>{{foo}}</div>
        
        <div>{{bar}} ___ {{bar2}}</div>
        <div>{{hello}}</div>

        <div>{{daFei.setName("WEB")}} __賦值</div>
        <div>{{daFei}}</div>   <!--  { "name": "WEB", "age": 18 }  -->
        <div>{{daFei.name}}</div> <!--   WEB  -->


        <!--
            01) extends是創建一個子類,最終返回一個vue實例。一般在單獨用js書寫組件的時候使用。
            
            02) 而mixins選項是指定要混入的代碼片段,vue代碼中的script部分。
            混入則可認為是vue版本的全局方法庫,而且不怎么影響現有vue邏輯的一個特殊處理方式。通常用
            在業務邏輯相似但又不同的兄弟組件之間
        -->
    </div>
</template>

<script>
    import {feiMixins, mixins2} from "./feiMixins.js" //  mixins
    import {feiExtends} from "./feiExtends.js" // extends
    import {feiClass} from "./feiClass.js"  // class
    
    export default {
        name: "index",
        components:{},
        mixins: [feiMixins,mixins2],
        extends: feiExtends,
        data() {
            return {
                foo: "foo_01",
                daFei: new feiClass()
            }
        }
    }
</script>

<style scoped>

</style>
feiMixins.js
export const feiMixins = {
    name: "xxx",
    data() {
        return {
            bar: "bar_mixins"
        }
    }
};

export const mixins2 = {
    name: "xxx",
    data() {
        return {
            bar2: "bar_002"
        }
    }
};
View Code
feiExtends.js
export const feiExtends = {
    name: "xxx",
    data() {
        return {
            hello: "hello_extends"
        }
    }
};
View Code
feiClass.js
export class feiClass {
    constructor() {
        this.name = "fei";
        this.age = 18;
    }

    setName(name) {
        this.name = name;
    }
}
View Code

 

 
        

 





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM