1
我在WinJS中有變量作用域的問題。當變量被改變時,它應該在更大範圍內可見,但是在調用函數之後,該變量僅在函數內部具有值。我認爲這是readTextAsync的問題,因爲當我在沒有readTextAsync的函數中填充變量時,它正在工作。WinJS變量只在函數內部變化
這是變量聲明:
var fileDate;
這是函數,我調用另一個:
WinJS.UI.Pages.define("index.html", {
ready: function (element, options) {
loadDate();
console.log("główna " + fileDate); //fileDate = undefined
this.fillYearSelect();
},
這是函數,其中變量發生變化:
localFolder.getFileAsync(filename).then(function (file) {
Windows.Storage.FileIO.readTextAsync(file).done(function (fileContent) {
fileDate = fileContent; // example - fileDate=a073z160415
console.log("fileDate " + fileDate);
},
function (error) {
console.log("Reading error");
});
},
function (error) {
console.log("File not found");
});
}
附:對不起我的英語不好。它不完美:)
它還活着!我必須改變我的代碼,但是你的解決方案是非常有用的。謝謝。 –