Lorsque j'essaie d'utiliser async/wait dans react-native, le message d'erreur suivant s'affiche:
uncaught error Error: SyntaxError: /Users/senthilsivanath/Documents/MusicTulip/index.ios.js: Unexpected token (50:23)
48 | renderScene: function(route,nav) {
49 | try {
50 | const response = await signIn.isLoggedIn();
Mon fichier .babelrc
est:
{ "presets": ["react-native", "es2015", "babel-preset-stage-3"] }
Il se peut que le mot-clé async
soit manquant à la ligne 48.
Mettez à jour votre code pour utiliser le mot clé async
avant le mot clé function
:
renderScene: async function(route, nav) {
try {
const response = await signIn.isLoggedIn();
// ...
Ou, lorsque vous utilisez une fonction de flèche, placez le mot clé async
avant la liste de paramètres:
renderScene: async (route, nav) => {
try {
const response = await signIn.isLoggedIn();
En JavaScript, le mot clé async
est un décorateur qui avertit le moteur d'exécution que le boîtier attaché utilisera le mot clé await
pour que vous puissiez toujours les voir utilisés ensemble. C'est pourquoi vous allez entendre les gens se référer à cette syntaxe comme la syntaxe async/await
.
Simplement: Vous ne pouvez pas utiliser await
sans async
.
Edit: Si vous déclarez cela à l'intérieur d'une classe, assurez-vous simplement que votre la syntaxe est correcte :
class MusicTulip extends Component {
async renderContent() {
const response = await signIn.isLoggedIn();
}
}
J'espère que ça aide!