我有一个奇怪的问题,因为我的代码在Ubuntu和Windows机器上运行良好,并且在Centos服务器中失败。我有相同的节点版本8.9.1和相同的npm 5.5.1和相同的帆1.0.0.41(全局和本地)。一切都有效,除了我的Centos机器
const makeRequest = async () => {
^
SyntaxError: Unexpected token (
用箭头指向第一个paren。我目前唯一怀疑的是我的N版本管理没有正确更新节点。运行节点-v报告8.9.1。以下是异步代码的简化示例:
const makeRequest = async () => {
try{
const user = await sails.models.user.findOne({id: user_id});
return Promise.resolve(user);
}
catch(error){
sails.log.error('error getting data', error);
}
}
return makeRequest().then(out => {
return Promise.resolve(out);
});
有关如何解决此错误的任何建议?
代码中缺少}
。检查下面
const makeRequest = async() => {
try {
const user = await sails.models.user.findOne({
id: user_id
});
return Promise.resolve(user);
} catch (error) {
sails.log.error('error getting data', error);
}
} // -> Its misssing in your code
return makeRequest().then(out => {
return Promise.resolve(out);
});
编辑
OP的回应
问题是版本管理。
node -v给了我8.9.1 sudo node -v给了我6.11
解决方案是为我的用户(而不是root)chown文件夹,并运行没有sudo的应用程序。 NVM然后正常工作。接受另一个答案,因为我的代码中存在错误。
问题是版本管理。
node -v
给了我8.9.1 sudo node -v
给了我6.11
解决方案是为我的用户(而不是root)chown文件夹,并运行没有sudo的应用程序。 NVM然后正常工作。接受另一个答案,因为我的代码中存在错误。