vue-i18n的 alpha 版本导致线上环境多语言异常
mosen868:
我之前排查了半天,还好是写练手项目..有帮助就好
vue-i18n的 alpha 版本导致线上环境多语言异常
air_cat_:
我研究了一天,一直以为是vite打包问题,服了
vue-i18n的 alpha 版本导致线上环境多语言异常
7 号:
服了,我看了一天这个问题.我猜到是版本太新了,我没有降级,我想先排查下其他问题.我发现, 各个地方都把 i18n 加进去了,就是 $t 这种符号用不成
// console.log('login.loginUsernameText 1 = ', i18n.global.messages.value.zh.login.loginUsernameText);
// console.log('t() login.loginUsernameText = ', t('login.loginUsernameText'));
// console.log('i18n.global.t login.loginUsernameText === ', i18n.global.t('login.loginUsernameText'));
我想着是不是 vite 打包把 i18n 打坏了,又弄着怎么只保存目录结构转成js其他的不变. 类憨了,这死bug
【JS】Promise的执行顺序
mosen868:
如果没有 return: 第一个 then 返回的是 undefined,它仍然会将第二个 then 中的回调放到微任务队列中。如果有 return: 如果第一个 then 返回一个新的 Promise(或者其他值),第二个 then 仍然会被放到微任务队列中,等待当前同步代码执行完毕后再执行。无论有没有 return,第二个 then 中的代码始终会等到当前所有同步任务执行完之后,再执行。
【JS】Promise的执行顺序
mosen868:
1.微任务队列的优先级: 在事件循环中,微任务队列中的任务总是会在宏任务队列之前执行。所以,即使我们没有显式地 return,第二个 then 还是会等待当前同步代码执行完,再去执行。2.then 的行为: 即使 then 中没有返回值(没有 return),它仍然会把后续的 then 放到微任务队列中,所以第二个 then 总是排在后面