Mus*_*Man 51 javascript babeljs react-native ecmascript-next
当试图在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();
Run Code Online (Sandbox Code Playgroud)
我的.babelrc
档案是:
{ "presets": ["react-native", "es2015", "babel-preset-stage-3"] }
Run Code Online (Sandbox Code Playgroud)
rad*_*ual 146
您可能只是错过了async
第48行的关键字.
更新代码以在async
关键字前使用function
关键字:
renderScene: async function(route, nav) {
try {
const response = await signIn.isLoggedIn();
// ...
Run Code Online (Sandbox Code Playgroud)
或者在使用箭头功能时,将async
关键字放在参数列表之前:
renderScene: async (route, nav) => {
try {
const response = await signIn.isLoggedIn();
Run Code Online (Sandbox Code Playgroud)
在JavaScript中,async
关键字是一个装饰器,用于警告运行时连接的机箱将使用await
关键字,因此您始终可以看到它们一起使用.这就是为什么你会听到人们将这种语法称为async/await
语法.
简单地说:你不能await
没有async
.
编辑:如果你在一个类中声明这个,那么只需确保你的语法是正确的:
class MusicTulip extends Component {
async renderContent() {
const response = await signIn.isLoggedIn();
}
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
归档时间: |
|
查看次数: |
74337 次 |
最近记录: |