Я пытаюсь отобразить список популярных вопросов для пользователя, когда они нажимают на них, я хочу, чтобы они заполняли панель ввода и / или отправляли сообщение боту через прямое соединение.
Я попытался использовать ReactDOM.getRootNode () и отследить входной узел и установить атрибут .value, но это не заполняет поле.Я предполагаю, что существует какая-то форма проверки, которая предотвращает это.
Кроме того, если я консоль регистрирую входной узел, затем сохраняю его как глобальную переменную на экране консоли, я могу изменить значение таким образом, но тогда сообщение фактически не сможет быть отправлено, нажав Enter илистрелка отправки ничего не делает.Несмотря на то, что может показаться, что опция предлагаемые действия хорошо подойдет для данного конкретного приложения, я НЕ МОГУ использовать его для этого варианта использования.
const [chosenOption, setChosenOption] = useState(null);
const getRootNode = (componentRoot) =>{
let root = ReactDom.findDOMNode(componentRoot)
let inputBar = root.lastChild.lastChild.firstChild.firstChild
console.log('Initial Console log ',inputBar)
setInputBar(inputBar)
}
//in render method
{(inputBar && chosenOption) && (inputBar.value = chosenOption)}
, это функция, которую я пытался использовать для поиска узла, выбранная опцияработает как задумано, но я не могу изменить значение в удобной форме.
Я бы хотел, чтобы пользователь щелкнул элемент <p>
, который изменяет значение selectedOption, и для этого выбора заполнил строку ввода и / или отправил это сообщение боту через прямое соединение. Чего я пытаюсь достичь