[英]How to store the contents of a folder/file to a variable in JavaScript?
当我遇到一个看似简单的问题时,我正在玩 face-api:如何将变量声明为等于本地文件的内容?
我了解在 HTML 中设置图像或脚本标签的内容时如何导航目标内容的文件夹。但是,我不太清楚如何在 JavaScript 中最好地做到这一点。
它看起来像下面这样吗:
const beachImage = Images/beach.jpeg
我觉得格式化缺少一些东西来辨别我打算访问本地文件而不是其他东西。 感谢您的任何输入::)
编辑:我忘了说明我是在浏览器中运行它而不是使用 node.js。很抱歉没有提到这一点。
我假设你正在运行 nodejs。 您可以通过这种方式读取本地图像的内容
const { readFileSync } = require('fs');
const beachImage = readFileSync('Images/beach.jpeg', 'binary'); // put the encoding you need
您可能还需要一个__dirname来构建文件的正确路径
编辑 html 方法。 HTML with JS 是关于触发和捕获事件的。 下面是一个示例,其中包含用于让用户选择图像的输入标签。 它显示选择的图像。 您可以在操作function 中对该图像执行某些操作。
<img id="image" src="" width="100" height="100">
<input id="input" name="photo" type="file" accept="image/*">
<button id="action-trigger">Trigger Action</button>
<script>
window.onload = attachEventHandlers;
function attachEventHandlers() {
document.getElementById("input").onchange = handleUploadedImage;
document.getElementById("action-trigger").onclick = action;
}
function handleUploadedImage(event) {
const src = window.URL.createObjectURL(event.target.files[0]);
document.getElementById('image').src = src;
}
function action() {
const image = document.getElementById('image');
if (image.src) {
// do something with image.src
// const detections = await faceapi.detectAllFaces(input) // make sure you imported face-api.js
} else {
alert('Please upload an image first');
}
}
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.