如何使用 ES6 模块导入文件,并将其内容作为字符串读取?
Posted
技术标签:
【中文标题】如何使用 ES6 模块导入文件,并将其内容作为字符串读取?【英文标题】:How to import a file using ES6 modules, and read its content as a string? 【发布时间】:2022-01-18 10:56:16 【问题描述】:在我的标准 React 应用程序中,我需要实现以下目标:导入位于我的 src 文件夹中的文件,以便简单地将其内容作为字符串读取。例如,假设我在文件中有以下代码:
alert('hey')
然后在其他文件中,我想用伪代码做这样的事情:
import * as string from './someFile.js'
console.log(string)
console.log 的输出应该是 JS 代码,作为一个字符串:
alert('hey')
如果我可以将文件放在我的公用文件夹中,我就可以执行 http 请求并按照我的意愿阅读它。但问题当然是,该文件是构建过程的一部分(在 src 文件夹内)
这个可以吗?
【问题讨论】:
具体是javascript文件内容吗? 如果这只是构建的一部分,您可以使用 node fs 模块...Read a file in Node.js @pilchard 也许我说错了。我的意思是,该文件是 webpack 从文件中组装的难题的一部分。 fs 模块在运行时不可用,这是我需要读取文件的时候。 @Gandzal 是的,它是 js。 【参考方案1】:我可以考虑:
使用以下代码定义 constants.js 文件:
export default "alert('vasia')";
从一些反应文件中导入这个文件:
import vasia from "./constants";
const App = () =>
console.log(eval(vasia));
这就是你要找的吗?
但是,必须警告你:“eval”是邪恶的!
【讨论】:
以上是关于如何使用 ES6 模块导入文件,并将其内容作为字符串读取?的主要内容,如果未能解决你的问题,请参考以下文章
如何处理作为 ES6 模块导入的 JavaScript 文件的缓存