TypeError: Cannot read property 'setDefault' of undefined in momentjs,, moment.tz()
TypeError: Cannot read property 'setDefault' of undefined in momentjs,, moment.tz()
我在 npm 环境中有一个 JS 文件,它及其关联的 package.json 如下所示。
我收到以下错误,而 运行 文件 'app.js'.
TypeError: Cannot read property 'setDefault' of undefined
我无法访问 moment.tz(),因为它正在获取未定义的值。
app.js
import moment from "moment";
moment.tz.setDefault(moment.tz.guess());
console.log(moment().tz());
package.json
"name": "folder_name_here",
"version": "1.0.0",
"description": "",
"main": "index.js",
"type": "module",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"moment": "^2.29.1",
"moment-timezone": "^0.5.33"
}
}
您应该从 moment-timezone
而不是 moment
导入。
import moment from "moment-timezone";
此外,几乎没有理由这样做 moment.tz.setDefault(moment.tz.guess());
,因为 Moment 已经理解了默认时区。如果那是您使用 Moment-Timezone 的唯一原因,那么请不要 - 只使用 Moment 本身。
我在 npm 环境中有一个 JS 文件,它及其关联的 package.json 如下所示。 我收到以下错误,而 运行 文件 'app.js'.
TypeError: Cannot read property 'setDefault' of undefined
我无法访问 moment.tz(),因为它正在获取未定义的值。
app.js
import moment from "moment";
moment.tz.setDefault(moment.tz.guess());
console.log(moment().tz());
package.json
"name": "folder_name_here",
"version": "1.0.0",
"description": "",
"main": "index.js",
"type": "module",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"moment": "^2.29.1",
"moment-timezone": "^0.5.33"
}
}
您应该从 moment-timezone
而不是 moment
导入。
import moment from "moment-timezone";
此外,几乎没有理由这样做 moment.tz.setDefault(moment.tz.guess());
,因为 Moment 已经理解了默认时区。如果那是您使用 Moment-Timezone 的唯一原因,那么请不要 - 只使用 Moment 本身。