引导应用程序时使用 FS 模块
You can use fs
引导应用程序时。例如,您可以读取文件系统中的文件以获取某些内容,然后将其添加到应用程序中以某种方式使用它。如果这是你想要的(我怀疑),你可以在你的vue.config.js
:
const fs = require('fs');
const someFileContents = fs.readFileSync('my-path-to-the-file');
module.exports = {
lintOnSave: true,
configureWebpack: config => {
return {
plugins: [
new webpack.DefinePlugin({
'somevar': someFileContents,
})
]
}
},
}
现在,每当你写作时somevar
在您的 Web 应用程序代码中,webpack 会在编译时将其替换为文件的内容。我认为这可能有一些用途,但从未实践过。
在浏览器中使用 FS 模块
出于安全原因,您cannot使用fs
浏览器中的模块:您将无法设置列出文件系统项目或写入磁盘的 Vue 组件。这不是 webpack、node 或 Vue 的问题,而是由于浏览器的安全限制造成的。当地人fs
Node.js 的模块与操作系统低级 API 进行通信,浏览器无法访问它们。
如果 javascript 能够修改或读取文件系统,就会出现许多毁灭性的、相当糟糕的安全问题。
文件系统 API
现在,有一个相当新的浏览器 API,文件系统API.
它不允许访问用户文件系统,但它以某种方式模拟了一个沙盒文件夹,您的 Web 应用程序可以在其中存储文件。根据您的使用情况,它可能对您有用,但没有最好的浏览器支持。
Webpack配置
任何地方都没有 webpack 配置文件。
事实上,vue-cli 3 应用程序中的所有 webpack 内容都应该通过vue.config.js
file: https://cli.vuejs.org/guide/webpack.html.
在那里你可以执行任意的node.js代码(事实上你可以调用fs
从那里开始,如前所述,因为它是在您的计算机上运行的代码,而不是在浏览器中运行)。