在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ vue methods中方法寫法問題?

vue methods中方法寫法問題?

methods: {
    setCameraPostion: (()=>{
        let _eye = new Vector3();
        let eyeDirection = new Vector3();
        let target = new Vector3();
        let distance, newDistance;
        return function setCameraPostion(args) {
            _eye.copy(args.pos).sub(target);
            eyeDirection.copy(_eye).normalize();
            distance = _eye.length();
            newDistance = ...(有點長,略過);
            eyeDirection.setLength(newDistance).add(target);
            return eyeDirection;
        }
    })(),
}

以上寫法是可以執(zhí)行的,我想問得是這種寫法是否可???需不需要優(yōu)化?
個人感覺這種輔助變量寫在data里很別扭...強迫癥了快
但缺點是無法使用this——不知道怎么用
謝謝

回答
編輯回答
傲嬌范

vuejs的生命周期很好的提供了什么時候調(diào)用方法的時機, 在方法里寫閉包的立即執(zhí)行,個人是認為沒必要的, 搞復(fù)雜了還浪費了使用this的便利.

2018年5月10日 04:12
編輯回答
朽鹿

如果這個組件有多個實例,所有的實例里的setCameraPostion method共用_eye,eyeDirection,target,distance,newDistance變量
還有用不了this是因為你用箭頭函數(shù)聲明method

2017年11月12日 20:44