UNPKG

jamis

Version:

一种支持通过JSON配置方式生成页面的组件库

64 lines (63 loc) 2.04 kB
import React from 'react'; import type { ActionObject, Option } from 'jamis-core'; import type { FormControlProps } from '../types'; import type { CityPickerProps } from './types'; interface CityPickerState { code: number; province: string; provinceCode: number; city: string; cityCode: number; district: string; districtCode: number; street: string; db?: { province: Array<string>; city: { [propName: number]: Array<number>; }; district: { [propName: number]: { [propName: number]: Array<number>; } | Array<number>; }; [propName: string]: any; }; } export default class CityPicker extends React.Component<CityPickerProps, CityPickerState> { static defaultProps: { joinValues: boolean; extractValue: boolean; delimiter: string; allowCity: boolean; allowDistrict: boolean; allowStreet: boolean; }; state: CityPickerState; componentDidMount(): void; componentDidUpdate(prevProps: CityPickerProps): void; loadDb(callback?: () => void): void; handleProvinceChange(option: Option): void; handleCityChange(option: Option): void; handleDistrictChange(option: Option, otherStates?: any): void; handleStreetChange(e: React.ChangeEvent<HTMLInputElement>): void; handleStreetEnd(): void; syncIn(props?: Readonly<CityPickerProps>): void; syncOut(): void; render(): JSX.Element; } export interface LocationControlProps extends FormControlProps { allowCity?: boolean; allowDistrict?: boolean; extractValue?: boolean; joinValues?: boolean; allowStreet?: boolean; } export declare class LocationControl extends React.Component<LocationControlProps> { doAction(action: ActionObject, data: object, throwErrors: boolean): void; handleChange(value: number | string): Promise<void>; render(): JSX.Element; } export declare class CityControlRenderer extends LocationControl { } export {};