也许这只是我的一个误解,但我认为createGenericItem in PeoplePicker (https://developer.microsoft.com/en-us/fabric#/components/peoplepicker)的回调是用来处理输入的,这些输入不能与任何可用项相匹配,然后给出了为此创建一个临时项的可能性。但是,不管我做了什么,都不叫回电话。
我在这里为这个问题做了一支简单的笔:https://codepen.io/anon/pen/daGPWe?editors=0010
在这个例子中,有两个项目,彼得和玛丽亚。如果您键入了不同的内容(然后按enter、tab、space等),我希望调用createGenericItem回调,但它不是。
我做错了什么?还是对这次召回的目的有误解?我在任何地方都找不到例子。
发布于 2019-01-29 13:08:16
关于
但是我认为createGenericItem在PeoplePicker (https://developer.microsoft.com/en-us/fabric#/components/peoplepicker)中的回调是用来处理输入的。
这是正确的。为了触发IBasePickerProps.createGenericItem函数,需要向IBasePickerProps.onValidateInput函数提供ValidationState.valid作为返回值,例如:
<NormalPeoplePicker
createGenericItem={this.createGenericItem}
onValidateInput={this.handleValidateInput}
selectedItems={this.state.selectedItems}
onResolveSuggestions={this.handleResolveSuggestions}
onChange={this.handleChange}
/>
private handleValidateInput(input: string) {
return ValidationState.valid;
}
private createGenericItem(input: string, validationState: ValidationState) {
return { text: "Unknown person", state: validationState };
}这个演示演示了它,一旦单击了tab或enter键,并且无法将值解析为任何可用项,则将显示Unknown person项。
https://stackoverflow.com/questions/54365053
复制相似问题