使用 brfs 时无法在 fs 函数中使用变量
Unable to use variables in fs functions when using brfs
我使用 browserify 以便能够使用 require。要在 browserify 中使用 fs 函数,我需要用 brfs 对其进行转换,但据我所知,这导致只能在我的 fs 函数中输入静态字符串作为参数。我希望能够为此使用变量。
我想在特定目录中搜索 xml 个文件并阅读它们。通过文本字段搜索或一次显示所有数据。为了做到这一点,我需要 fs 和 browserify 才能要求它。
const FS = require('fs')
function lookForRoom() {
let files = getFileNames()
findSearchedRoom(files)
}
function getFileNames() {
return FS.readdirSync('../data/')
}
function findSearchedRoom(files) {
const SEARCH_FIELD_ID = 'room'
let searchText = document.getElementById(SEARCH_FIELD_ID).value
files.forEach((file) => {
const SEARCHTEXT_FOUND = file.includes(searchText.toLowerCase())
if (SEARCHTEXT_FOUND) loadXML(file)
})
}
function loadXML(file) {
const XML2JS = require('xml2js')
let parser = new XML2JS.Parser()
let data = FS.readFile('../data/' + file)
console.dir(data);
}
module.exports = { lookForRoom: lookForRoom }
我希望能够从包含 xml 个文件的目录中读取内容。
目前的状态是我只能在我提供一个常量字符串给 fs 函数时才能这样做
brfs
自述文件包含这个陷阱:
Since brfs
evaluates your source code statically, you can't use dynamic expressions that need to be evaluated at run time.
所以,基本上,您不能按照您希望的方式使用 brfs
。
I want to be able to read contents out of a directory containing xml files
如果 "a directory" 的意思是 "any random directory, the name of which is determined by some form input",那是行不通的。浏览器无法直接访问本地或服务器上的目录内容。
你不是说该目录存在于何处。如果它是本地的(在机器上,浏览器是 运行):我认为根本没有标准化的 API 来做到这一点。
如果它在服务器上,那么您需要实现一个 HTTP 服务器,它将接受来自某些客户端代码的 directory-/filename,并以这种方式检索文件内容。
我使用 browserify 以便能够使用 require。要在 browserify 中使用 fs 函数,我需要用 brfs 对其进行转换,但据我所知,这导致只能在我的 fs 函数中输入静态字符串作为参数。我希望能够为此使用变量。
我想在特定目录中搜索 xml 个文件并阅读它们。通过文本字段搜索或一次显示所有数据。为了做到这一点,我需要 fs 和 browserify 才能要求它。
const FS = require('fs')
function lookForRoom() {
let files = getFileNames()
findSearchedRoom(files)
}
function getFileNames() {
return FS.readdirSync('../data/')
}
function findSearchedRoom(files) {
const SEARCH_FIELD_ID = 'room'
let searchText = document.getElementById(SEARCH_FIELD_ID).value
files.forEach((file) => {
const SEARCHTEXT_FOUND = file.includes(searchText.toLowerCase())
if (SEARCHTEXT_FOUND) loadXML(file)
})
}
function loadXML(file) {
const XML2JS = require('xml2js')
let parser = new XML2JS.Parser()
let data = FS.readFile('../data/' + file)
console.dir(data);
}
module.exports = { lookForRoom: lookForRoom }
我希望能够从包含 xml 个文件的目录中读取内容。 目前的状态是我只能在我提供一个常量字符串给 fs 函数时才能这样做
brfs
自述文件包含这个陷阱:
Since
brfs
evaluates your source code statically, you can't use dynamic expressions that need to be evaluated at run time.
所以,基本上,您不能按照您希望的方式使用 brfs
。
I want to be able to read contents out of a directory containing xml files
如果 "a directory" 的意思是 "any random directory, the name of which is determined by some form input",那是行不通的。浏览器无法直接访问本地或服务器上的目录内容。
你不是说该目录存在于何处。如果它是本地的(在机器上,浏览器是 运行):我认为根本没有标准化的 API 来做到这一点。
如果它在服务器上,那么您需要实现一个 HTTP 服务器,它将接受来自某些客户端代码的 directory-/filename,并以这种方式检索文件内容。