2017-05-04 51 views
0

我試圖加載二進制文件等閱讀內容
對於這一點,我使用的加載功能,讓我的二進制文件,然後,
我調用一個函數解析二進制文件。

的問題是,我可以訪問DATAS
我一直做這個錯誤:
加載上VUEJS二進制文件與jBinary

Uncaught (in promise) TypeError: Cannot read property 'parsePeturboDATFiles' of undefined at eval (eval at 79 (0.05b4762….hot-update.js:7), :128:11)

我曾嘗試CONSOLE.LOG我的數據,看看到底是怎麼回事錯的,但我可以打印我的數據,但我不能將它傳遞給我的其他解析函數......我不明白爲什麼。

這裏是我的代碼的方式:

<template> 
    <div class="cde"> 
    <h1></h1> 
    </div> 
</template> 



<script> 
    import jbinary from 'jbinary' 
    export default { 
    name: 'CDE', 
    data() { 
     return { 
     } 
    }, 
    methods : { 
     parsePeturboDATFiles : function (data) { 
     console.log(data) 


     }, 
    }, 
    mounted : function() { 
     jbinary.load('./static/test.dat').then(function (data) { 
     console.log(data.view) //works fine 
     this.parsePeturboDATFiles(data.view) //get an error 

     }) 

    } 
    } 
</script> 

回答

0

錯誤是說,它不能因爲this變量計算到undefined閱讀parsePeturboDATFiles屬性。在另一個變量self商店this的引用,然後用它來打電話parsePeturboDATFiles()

mounted : function() { 
    var self = this; 
    jbinary.load('./static/test.dat').then(function (data) { 
    self.parsePeturboDATFiles(data.view); 
    }) 
}