日本語プログラミング言語なでしこの公式掲示板
なでしこ の
掲示板
トップ
公式
書き込みの前に必ず掲示板のルールについて確認をお願いします。(
こちら
)
プログラミングの質問については、必ず解決した際に質問者は、解決したことを明記してもらえるようお願いします。(
こちら
)
1812番に対する返信です。(親記事1799番)
名前(必修)
メール(必修)
タイトル(必修)
カテゴリ(必修)
コメント
補足
解決
終了
本文(必修)
■本文始まり■ ■本文始まり■ 生成されるJavascriptを見た感じでは特定の条件におけるバグを踏んだように思います。 ・asyncFn===trueでマークされる、非同期な命令を使用している ・pure!==falseでマークされる、変数への参照・設定を含む可能性のある命令を使用している ・その命令を呼び出しているスコープにローカル変数が存在する AWAIT実行は前2つの条件を満たしてます。 この3つの条件が揃うと、この命令の行が非同期の待機なしで実行されます(バグだと思われる)。 (「それ」への代入も非同期になってます) そのため、「その」への代入が遅れて、1つまえの「その」が見えているのだと思います。 「その」を介さずAWAIT実行の行でspに代入した場合、awaitで待つべきPromiseが代入されます。 どちらの場合も期待したようになりません。 なお、spにPromiseを入れたケースでそのPromiseをユーザ関数から戻り値とした場合は、ユーザ関数の呼び出しにawaitが付くので呼び出し元では内容が取り出せます。 王道としてはバグが修正されるのを待つことになると思います。 ■本文終わり■ 解読に時間がかかりました(ことばがむずかしかった) > なお、spにPromiseを入れたケースでそのPromiseをユーザ関数から戻り値とした場合は、ユーザ関数の呼び出しにawaitが付くので呼び出し元では内容が取り出せます。 つまり、こう…! //---------------------- file = 「spines/spineboy.json」 sp=SPINEテスト(file)//③ユーザ関数の呼び出しにawaitが付くので spをコンソール表示//④呼び出し元では内容が取り出せます。 sp["spineData"]["animations"][0]["name"]を言う //⑤→death ●SPINEテスト(ファイル名) AAA=『 (async function (ファイル名) { return new Promise((resolve, reject) => { const app = new PIXI.Application({width: 800,height: 600}); document.body.appendChild(app.view);//キャンバスを置く const loader = PIXI.loader loader.add('spd', ファイル名); loader.load( (loader,res) => { var sp = new PIXI.spine.Spine(res.spd.spineData);//リソースをspineに変換 sp.y = 600; sp.x = 400; sp.state.setAnimation(0, sp.spineData.animations[6].name, true); app.stage.addChild(sp);//キャンバスに追加 console.log(sp);//spineのデータが表示される resolve(sp);//なでしこ3の変数に戻したい }) }) }) 』をJS実行 sp=AAAを[ファイル名]でAWAIT実行//①spにPromiseを入れたケースで spを戻す//②そのPromiseをユーザ関数から戻り値とした場合は ■本文終わり■
顔文字
😄
😁
😌
😍
😉
😜
😢
😭
😓
😞
😣
😖
😖
😲
😱
😠
😡
😔
😒
絵文字
🎵
🎶
❗
❤
💔
✨
👀
👂
💋
✊
✌
✋
👊
👍
🏃
👣
💨
💦
💢
💤
💡
☀
☁
☔
⛄
⚡
🌀
🌊
🗻
🌙
🍀
🌷
🍁
🎂
🎁
👑
🔔
🌸
🎄
🐶
🐱
🐷
🐴
🐤
🐟
🍴
🍺
🍶
🍸
🍵
☕
🍰
🍙
🍞
🍎
🍔
🏠
🏢
🏫
🏥
🏣
🏧
🏦
🏪
🏨
🚲
🚗
🚙
🚌
🚃
⛽
🚥
🚄
🚢
⛵
✈
📱
📲
📩
☎\
📠
💻
📺
💿
🔍
🔑
✂
📖
📝
💣
💰
🕙
🎩
👟
👠
👕
👜
🌂
🎀
💄
💍
🎧
🎤
🎬
🎥
📷
🎨
🏀
⚽
⚾
🎾
⛳
🎿
🏁
↘
↙
🆗
🆕
🆔
🈳
🈵
㊙
🚻
♿
🚬
🚭
♠
♥
♣
♦
⭕
♨
⚠
♈
♉
♊
♋
♌
♍
♎
♏
♐
♑
♒
♓
©
®
™
合言葉(必修)
(『ナビ』と入力してください)
リンク/画像(任意)
画像アップ(.jpgファイル)(任意)
なでしこアップ(.nakoファイル)(任意)