【发布时间】:2021-08-06 20:08:56
【问题描述】:
首先,我认为 firebase 功能已损坏。然后,我尝试制作一个返回 Promise 的简单函数。我把它放到顶级 index.js 中。
const testPromise = param => {
console.log('return promise', param);
return new Promise((resolve, reject) => {
console.log('resolve promise');
resolve('derp');
});
};
testPromise('hede')
.then(d => {
console.log('resolved');
})
.catch(e => {
console.log('e', e);
});
AppRegistry.registerComponent(appName, () => App);
控制台输出:
return promise hede
resolve promise
看,没有“已解决”日志或错误日志。
我尝试使用 nvm 更改 nodejs 版本,但没有成功。我试过 v12.5.0、v12.18.2、v15.6.0、v10.16.3。我试过nvm use 12.5 && npm start
我尝试创建一个新的 react-native 项目并复制了所有内容。 现在,它按预期工作了。 这对我来说是一个解决方案,但我没有将问题标记为已解决,因为仍有一个谜团,我不知道为什么它在现有项目。
【问题讨论】:
-
为我打印
return promise hede; resolve promise; resolved? -
是的,应该是这样的。但是在这个反应原生项目中。不知何故“解决”不打印
-
除非在标准输出完全传输之前进程结束是一些奇怪的问题,否则不确定发生了什么。
标签: node.js react-native es6-promise metro-bundler