Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Enum types are not being generated by the Typescript Generator

Đang mở
#366 0 bình luận 1 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
45/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
php, typescript
Lĩnh vực
tooling

Hướng nghiên cứu

Bắt đầu với lệnh npm init @api-platform/client được tài liệu hóa, sử dụng trình tạo TypeScript và một entity như Person với enum Gender được hiển thị. Kiểm tra interface Person được tạo và theo dõi cách thuộc tính gender trở thành any. Được xem là hoàn tất khi đầu ra được tạo biểu diễn các giá trị enum và sử dụng enum đó trong interface thay vì any.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

API Platform version(s) affected: 3.0

Description
I'm using the Typescript Generator to generate some interfaces and I have some enum types in the Entity, for example:

<?php
//Enum
namespace App\Enum;

enum Gender: string
{
    case FEMALE = 'female';
    case MALE = 'male';
}
<?php
// Entity
class Person
{
    ...
    #[ORM\Column(type: "string", length: 6, nullable: true, enumType: Gender::class)]
    private $gender;
    ...

but when I generate the interfaces, they are generated as type any.

How to reproduce
Create an entity with an enum type. Use the Typescript generator to generate the corresponding interface:

npm init @api-platform/client http://localhost/api src/ -- --generator typescript

The interface generated will be of type any instead of having the proper enum type:

export interface Person {
 ...
 gender?: any;
 ...
}

Possible Solution

The generator should generate the corresponding enum and implement it in the interface:

export interface Person {
 ...
 gender?: gender;
 ...
}

export enum gender {
    FEMALE = 'female',
    MALE = 'male',
}

Additional Context

Ngôn ngữ chính
TypeScript
Star
376
Fork
133
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của api-platform/create-client

Tất cả issue của api-platform/create-client

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.