Ant-design: [Permintaan Fitur] Ekspor definisi antarmuka Alat Peraga di semua file index.d.ts komponen

Dibuat pada 23 Jun 2017  ·  8Komentar  ·  Sumber: ant-design/ant-design

Masalah apa yang dipecahkan oleh fitur ini?

Memiliki antarmuka Props standar yang didefinisikan sebagai publik memungkinkan untuk menggunakan kembali definisi Props saat membuat versi kustom saya sendiri dari komponen tersebut.

Seperti apa tampilan API yang diusulkan?

Misalnya, saat membuat Komponen Login, saya harus:

import { FormComponentProps } from 'antd/lib/form/Form'

class Login extends React.Component<{} & FormComponentProps, {}> {
  render() {
    // some render code
  }
}

Tetapi mengikuti mungkin lebih baik:

import { FormComponentProps } from 'antd'

class Login extends React.Component<{} & FormComponentProps, {}> {
  render() {
    // some render code
  }
}

Setidaknya:

import { FormComponentProps } from 'antd/lib/form'

class Login extends React.Component<{} & FormComponentProps, {}> {
  render() {
    // some render code
  }
}

Sama seperti paket UI berbasis TS ini: cetak biru

help wanted 🗣 Discussion

Komentar yang paling membantu

Saya pikir yang pertama lebih baik.

Memilih cara kedua mungkin karena yang pertama juga terbuka mungkin antarmuka, tetapi antarmuka ini sangat berguna saat menggunakan TypeScript, mereka yang tidak menggunakan TS tidak melihatnya.

Banyak kerangka kerja yang ditulis dalam TS akan mengekspos antarmuka ke bagian paling luar, dan tidak menemukan masalah apa pun.

Tentunya cara kedua bisa memenuhi kebutuhan. Tujuan dari MASALAH ini adalah untuk menyatukan lokasi antarmuka yang terbuka . Situasi saat ini adalah bahwa lokasi dari antarmuka tidak dapat diprediksi dalam folder lib/[component name]/ .

Tapi saya masih berharap yang pertama bisa diadopsi, terima kasih.

Semua 8 komentar

Menurut saya yang berikut ini cukup bagus:

import { FormComponentProps } from 'antd/lib/form'

class Login extends React.Component<{} & FormComponentProps, {}> {
  render() {
    // some render code
  }
}

Saya pikir yang pertama lebih baik.

Memilih cara kedua mungkin karena yang pertama juga terbuka mungkin antarmuka, tetapi antarmuka ini sangat berguna saat menggunakan TypeScript, mereka yang tidak menggunakan TS tidak melihatnya.

Banyak kerangka kerja yang ditulis dalam TS akan mengekspos antarmuka ke bagian paling luar, dan tidak menemukan masalah apa pun.

Tentunya cara kedua bisa memenuhi kebutuhan. Tujuan dari MASALAH ini adalah untuk menyatukan lokasi antarmuka yang terbuka . Situasi saat ini adalah bahwa lokasi dari antarmuka tidak dapat diprediksi dalam folder lib/[component name]/ .

Tapi saya masih berharap yang pertama bisa diadopsi, terima kasih.

Hai, im mencoba untuk mencari tahu mengapa tidak bekerja untuk saya tetapi, saya mengalami kesalahan ini node_modules / antd / lib / form / index "'tidak memiliki anggota yang diekspor' FormComponentProps '.

solusi saya adalah mengimpor {FormComponentProps} dari 'antd / lib / form / Form';

Apa yang saya lakukan salah?

@Tokopedia

Apakah maksud Anda Anda mencoba ini: import { FormComponentProps } from 'antd/lib/form , tetapi mendapatkan kesalahan?

tentu saja ini adalah kesalahan, karena FormComponentProps tidak terekspos di lib/form dir sekarang, itulah mengapa saya mengirimkan masalah ini :)

@newraina ahhhh sekarang saya mengerti! : D maaf, sementara itu saya akan menggunakan import {FormComponentProps} dari 'antd / lib / form / Form'; baik ?

@Septianjoko_

Anda dapat membantu kami untuk ini.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat