質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
React Native

React Nativeは、ネイティブモバイルアプリ(iOS/Android)を作成できるJavaScriptフレームワークです。Reactと同じ設計のため、宣言的なコンポーネントでリッチなUIを開発することが可能です。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

解決済

1回答

1959閲覧

【ReactNative】async/awaitを使って処理を整理してもsetStateの情報が更新されない

Hinoarashi.

総合スコア76

React Native

React Nativeは、ネイティブモバイルアプリ(iOS/Android)を作成できるJavaScriptフレームワークです。Reactと同じ設計のため、宣言的なコンポーネントでリッチなUIを開発することが可能です。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2021/11/02 06:54

編集2021/11/02 07:15
const [hoge, setHoge] = useState(false); function timeupVideoControls() { return new Promise(resolve => { resolve(setHoge(true)); //promiseを返す }); } async function sample() { await timeupVideoControls(); //promiseを返されたfunctionをawaitする。 console.log(hoge); } ...略 <View style={{ width: '100%', height: '100%' }}>   <TouchableWithoutFeedback onPress={() => { sample(); //⇦結果がfalseになる何故!!! }}> <Text style={{flex: 1,}}>{''}</Text> </TouchableWithoutFeedback> </View>

上記のように書いてみたのですが、結果がfalseになります。
quitaの記事参考にしてあってると思ってるのですが・・。

どなたかご存知の方教えて欲しいです。
何卒よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

console.log(hoge); を以下のように移動でどうでしょ?

diff

1 const [hoge, setHoge] = useState(false); 2+ console.log(hoge); 3 4 function timeupVideoControls() { 5 return new Promise(resolve => { 6 resolve(setHoge(true)); //promiseを返す 7 }); 8 } 9 async function sample() { 10 await timeupVideoControls(); //promiseを返されたfunctionをawaitする。 11- console.log(hoge); 12 } 13

投稿2021/11/02 07:05

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hinoarashi.

2021/11/02 07:14

ご回答ありがとうございます!! 実は更新できてるんじゃないかということですね。 グローバルな位置console.log持っていったらtrueになってました。。 お騒がせしました、ありがとうございます。。
退会済みユーザー

退会済みユーザー

2021/11/02 09:05

> 実は更新できてるんじゃないかということですね。 はいそうですぅ〜????
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問