Чтобы захватить изображение с мобильного устройства с помощью кода React js, я использую следующий код
<input type = "file" accept = "image/*" capture onChange = {this.loadFile}/>
Этот входной тег зависит от переменных состояния при реагировании. Когда входной тег будет отрисован, сначала он попросит пользователя нажать кнопку «выбрать файл», а затем откроет камеру. Итак, можем ли мы открыть камеру напрямую, чтобы кнопка «Выбрать файл» не появлялась, а непосредственно при изменении значений состояния камера открывалась? Функция обработчика loadFile: -
loadFile = (event: any) => {
var reader = new FileReader();
reader.onload = function() {
output: HTMLImageElement;
var output = document.getElementById("output");
output.src = reader.result;
};
reader.readAsDataURL(event.target.files[0]);
// console.info(event.target.files[0]);
this.setState({
activeCameraToggle: 0,
photo1: event.target.files[0]
});
};
обновил вопрос
Измените accept с "image/*" на "image/*;capture=camera".
не сработало @JediBurrell, я хочу, чтобы кнопка "выбрать файл" не появлялась, а камера открывалась напрямую
Я бы возненавидел, если бы вы могли открыть камеру без моего согласия!
@PoulBak Вы не можете, пользователю придется щелкнуть элемент input, чтобы открыть его.
@JeriBurrell, ну, тогда вы ответили на вопрос ОП.
@rockz Оказывается, предыдущий метод больше не работает, и решение, которое предлагает W3, заключается в использовании MediaStream API. Это гораздо более тяжелое решение, которое экономит пользователю всего один клик. Почему именно вы хотите пропустить подсказку?
подробно расскажите о своей функции






Проверьте эту библиотеку:
https://github.com/react-community/react-native-image-picker
После добавления в свой проект сделайте следующее:
// Launch Camera:
ImagePicker.launchCamera(options, (response) => {
// Same code as in above section!
});
Это проект React Native? Похоже, речь идет о веб-React.
Поделитесь, пожалуйста, кодом вашей функции обработчика?