見出し画像

【reversi.js】過去作の改造 15【開発記】

とある用途の為に過去に作った JSJavaScript 作品を改造するぽ🤤

----備忘録
DBG をイベント駆動式に?✅

→名前どうこうじゃなくてイベント発行に失敗してただけだった

#開発記 #JavaScript
#CustomEvent


の前に

前回の気付きを jsx に還元したら更なる改良ができたので逆輸入feedbackするぽ🤤

………書き換えてて気がついたけど funcobj も dicobj も一発代入できてるから要らないなってなった🙄


DBG

で、戻ってきたわけだけど、ブレイクして前回は listener のコールバックが消えちゃってた所だけど jsx から移植した方のコールバックはなんか存在してるのよね🤔
これ、何が違うんだろ?そこが分かればあんまり手を入れなくて済むかも?🤤

………🤔

………🙄

………🤪

_人人人人人人人_
> 返り値return無し忘れ <
 ̄Y^Y^Y^Y^Y^Y^Y^ ̄

🙄🙄🙄❓❓❓❓❓

名前決定に使った変数名で作られてるじゃん🤬🤬🤬
まさか「動的関数名決定を認めない」って仕様?🤬🤬🤬🤬🤬

すごい不満なんだけど?ひどくね?🙄

これは多分いつもの、地道に直さないといけない方のエラー😑

どうやらコールバック中は self はインスタンス的な this じゃなくて単純なオブジェクト参照に成り下がってるっぽい🙄
そういや確かにいつもメンバー関数呼ぶ時はインスタンスとして機能してるクラス内で呼んでる事のが多いからこうなるのかな…よくわからないけど😞

prototype 呼び出しに変えたら出なくなったけど、エラーは無くならない😞

TypeError: cannot use 'in' operator to search for 'x' in 'y'
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Errors/in_operator_no_object

in 演算子が文字列、数値、その他のプリミティブ型の中を検索するために使用された場合に発生します。

んんんん?プリミティブになってるぞって話?🙄

………
これ、 if の等号おかしい…?🙄

コピペ元projectItemRenamer.jsx 見ると `!==` じゃなく `===` になってる😞
しかもその後の options[oType] ってとこ、これ options[oType[i]] じゃない?🤪

ヨシ!👈🤪


試しに function 定義を参照型に戻すと…

一応動くけれど名前が壊滅的に判別しにくい🙄
でもまぁ動いてるって事は命名の問題じゃなくて options への設定が失敗してて落ちってただけっぽいので現状ではこの新方式のまま行こうかな😑
デバグする時に毎回「全部 FUNCNAME で分からん!」ってなりそうだけど🤪


次回は

今度こそ DBG の次のオブジェクトへ…🤤

この記事が気に入ったらサポートをしてみませんか?