Tajuk ditulis semula kepada: "(ES6) Class (ES2017) Async/Await Getter Method"
P粉564192131
P粉564192131 2023-08-22 22:10:47
0
1
476

Adakah mungkin atau mungkin pada masa hadapan untuk mengembalikan nilai daripada pengambil kelas ES6 melalui fungsi menunggu/async ES2017.

class Foo { async get bar() { var result = tunggu someAsyncOperation(); pulangan hasil; } } fungsi someAsyncOperation() { kembalikan Janji baharu(fungsi(selesai) { setTimeout(fungsi() { menyelesaikan ('baz'); }, 1000); }); } var foo = new Foo(); foo.bar.should.equal('baz');


P粉564192131
P粉564192131

membalas semua (1)
P粉025632437

Kemas kini:Seperti yang orang lain nyatakan, ini tidak benar-benar berkesan. @kuboon menyediakan penyelesaian yang bagusdi bawah.

Anda boleh melakukan ini

class Foo { get bar() { return (async () => { return await someAsyncOperation(); })(); } }

Ini sama seperti kod di bawah

class Foo { get bar() { return new Promise((resolve, reject) => { someAsyncOperation().then(result => { resolve(result); }); }) } }
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!