1

問題は厳密にTypeScriptにあります。Cocos Creator に JavaScript ベースの Cocos プロジェクトがある場合、私が抱えている問題は完全に機能します。

enums というファイルに次の列挙型があります。

export const enum CollisionType {
Static=    0,
Dynamic=   1,
Solid=     2,
SemiSolid= 3
}

私のgame.tsファイルには次のものがあります

import {CollisionType} from "./Enums";

export default class PlayerControl extends cc.Component {

@property (CollisionType)
collisionType:CollisionType = CollisionType.Static;

残念ながら、これは機能しません。CollisionType の下に赤い線が表示され、次のエラーが表示されます。

Argument of type 'typeof CollisionType' is not assignable to parameter of type 'string | number | boolean | Function | any[] | { type?: any; visible?: boolean | (() => boolean); displayName?: string; tooltip?: string; multiline?: boolean; readonly?: boolean; min?: number; max?: number; ... 7 more ...; animatable?: boolean; } | ValueType'.

@property を変数に設定しないと問題なく動作しますが、この値は Cocos Creator エディターで編集できません。

何か案は?

4

1 に答える 1