在 React Native 中使用 async/await 时出错
Error using async/await in React Native
尝试在 react-native 中使用 async/await 时,出现以下错误:
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();
我的 .babelrc
文件是:
{ "presets": ["react-native", "es2015", "babel-preset-stage-3"] }
您可能只是缺少第 48 行的 async
关键字。
更新您的代码以在 function
关键字之前使用 async
关键字:
renderScene: async function(route, nav) {
try {
const response = await signIn.isLoggedIn();
// ...
或者使用箭头函数时,在参数列表前加上async
关键字:
renderScene: async (route, nav) => {
try {
const response = await signIn.isLoggedIn();
在 JavaScript 中,async
关键字是一个装饰器,它警告运行时附加的附件将使用 await
关键字,因此您总是看到它们一起使用。这就是为什么您会听到人们将此语法称为 async/await
语法。
简单地说:没有async
就不能用await
。
编辑: 如果您在 class 中声明它,那么只需确保您的 syntax is correct:
class MusicTulip extends Component {
async renderContent() {
const response = await signIn.isLoggedIn();
}
}
只需使用:
const comp1 = await import('path');
尝试在 react-native 中使用 async/await 时,出现以下错误:
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();
我的 .babelrc
文件是:
{ "presets": ["react-native", "es2015", "babel-preset-stage-3"] }
您可能只是缺少第 48 行的 async
关键字。
更新您的代码以在 function
关键字之前使用 async
关键字:
renderScene: async function(route, nav) {
try {
const response = await signIn.isLoggedIn();
// ...
或者使用箭头函数时,在参数列表前加上async
关键字:
renderScene: async (route, nav) => {
try {
const response = await signIn.isLoggedIn();
在 JavaScript 中,async
关键字是一个装饰器,它警告运行时附加的附件将使用 await
关键字,因此您总是看到它们一起使用。这就是为什么您会听到人们将此语法称为 async/await
语法。
简单地说:没有async
就不能用await
。
编辑: 如果您在 class 中声明它,那么只需确保您的 syntax is correct:
class MusicTulip extends Component {
async renderContent() {
const response = await signIn.isLoggedIn();
}
}
只需使用:
const comp1 = await import('path');