はこの問題に続き、REPLノードが、私は非同期/へのサポートを追加したい
をノードAに待って待っています:https://github.com/nodejs/node/issues/8382
私はこの1つhttps://github.com/paulserraino/babel-replを使用することを試みたが、非同期suppportを待つ不足しています
私はノードREPL上のカスタムのevalにこのスニペットを追加することができますどのように
const awaitMatcher = /^(?:\s*(?:(?:let|var|const)\s)?\s*([^=]+)=\s*|^\s*)(await\s[\s\S]*)/;
const asyncWrapper = (code, binder) => {
let assign = binder ? `root.${binder} = ` : '';
return `(function(){ async function _wrap() { return ${assign}${code} } return _wrap();})()`;
};
// match & transform
const match = input.match(awaitMatcher);
if(match) {
input = `${asyncWrapper(match[2], match[1])}`;
}
このスニペットを使用したいですか?ノードREPLで
例:
> const user = await User.findOne();
普通のノード7のREPLを '--harmony'と一緒に使うのはどうですか? – estus
ノード - ノード7のREPLが動作しない--harmony-async-await –
さて、それはすべきです。ノードのバージョンを確認することをお勧めします。明らかに、 'await'は' async'関数の中にあるべきです。 – estus