【问题标题】:Create a .CSS, .HTML and .JS file using Node JS使用 Node JS 创建一个 .CSS、.HTML 和 .JS 文件
【发布时间】:2021-12-06 20:04:35
【问题描述】:

我对 Node 很陌生,因此坚持使用这个!!

我正在尝试编写一个节点脚本来创建一个文件夹(lizardproject),其中包含三个不同的文件,即 index.html、app.js、style.css。

代码

const fs = require('fs');
const folderName = process.argv[2] || 'Project'

try {
fs.mkdirSync(folderName);
fs.writeFileSync(`${folderName}/index.html`)
fs.writeFileSync(`${folderName}/app.js`)
fs.writeFileSync(`${folderName}/style.css`)
} catch(e) {
    console.log("Something went wrong!!");
    console.log(e);
}

在执行时,正在创建文件夹。

执行

hp\nodeintro>node boilerplate.js lizardproject

结果

hp\nodeintro>ls
boilerplate.js   lizardproject  

但文件不是,并且正在显示此错误:-

错误

出了点问题!!
TypeError [ERR_INVALID_ARG_TYPE]:“data”参数必须是字符串类型或 Buffer、TypedArray 或 DataView 的实例。收到未定义
在 Object.writeFileSync

【问题讨论】:

  • writeFileSync 接受两个参数。文件名和数据。您没有传递任何数据。
  • 使用 writeFile(Sync) 时需要写一些东西。只需添加带有空字符串的第二个参数。

标签: javascript node.js


【解决方案1】:

查看该函数的documentation

fs.writeFileSync(file, data[, options])

file <string> | <Buffer> | <URL> | <integer> filename or file descriptor
data <string> | <Buffer> | <TypedArray> | <DataView> | <Object>

data 是第二个参数。

您没有提供第二个参数,所以它是undefined。因此出现错误消息:Received undefined at Object.writeFileSync.

错误告诉您可以接受哪些类型的值。提供其中之一。字符串是最简单的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-15
    • 1970-01-01
    • 2018-01-30
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多