gpt4 book ai didi

javascript - 如何从解析平台检索对象并使用 Typescript 显示它们?

转载 作者:行者123 更新时间:2023-11-30 20:21:06 24 4
gpt4 key购买 nike

我想检索存储在解析平台中的对象,并且我正在使用 ionic 框架。所以我在 Home.ts 中写了这段代码:

export class HomePage {
result: string = 'sample' ;

constructor(public navCtrl: NavController) {
Parse.serverURL = 'https://parseapi.back4app.com/';
Parse.initialize("MY_APP_ID", "MY_JS_KEY");
var GameScore = Parse.Object.extend("GameScore");
var query = new Parse.Query(GameScore);

query.get("wN9bVUA9Hu", {
success: function(gameScore) {
// The object was retrieved successfully.
this.result = gameScore.get("score").toString();
console.log(this.result);
},
error: function(object, error) {
// The object was not retrieved successfully.
// error is a Parse.Error with an error code and message.
}
});
}

}

对象的 id = wN9bVUA9Hu,因此应该检索对象的分数 9。但正如你在这里看到的:result

结果在 Home.html 中没有改变,但在控制台中,它是 9。

这是我的 Home.html 代码:

<ion-header>
<ion-navbar>
<ion-title>
Ionic Blank
</ion-title>
</ion-navbar>
</ion-header>

<ion-content padding>
<h4>{{result}}</h4>
</ion-content>

我该如何解决这个问题并在 Home.html 中显示检索到的对象?

谢谢。

最佳答案

对不起,这对我来说应该是显而易见的,但我的眼睛却忽略了这些东西。

var func1 = () => console.log(this.result);
var func2 = function { console.log(this.result); }

这两个说法是不一样的。在可能的情况下,如果您使用箭头函数(例如 func1),您的理智将会得到改善。它们在 JavaScript 中较新,因此您看到的许多示例都不会包括它们。

在箭头函数中,this 指向函数内部和外部相同的对象。使用 function 语法,this 被重新分配给其他东西,具体取决于它的调用方式。所以在你的代码中,当你说 this.result = gameScore.get("score").toString(); 问题是 this 没有引用的实例主页

如果您需要保留 function 语法(一些库依赖于 this 的重新分配),那么您必须执行类似...

const self = this;
query.get("wN9bVUA9Hu", {
success: function(gameScore) {
self.result = gameScore.get("score").toString();
},
error: function(object, error) {
// The object was not retrieved successfully.
// error is a Parse.Error with an error code and message.
}
});
}

关于javascript - 如何从解析平台检索对象并使用 Typescript 显示它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51443369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com