【发布时间】:2020-07-05 10:46:51
【问题描述】:
我在一个充满实用功能的 npm 包中将 momentjs 列为对等依赖项。这些功能之一使用矩。
"peerDependencies": {
"moment": "2.x.x"
},
以下是使用时刻的简化视图:
import moment from 'moment'
export default function formatDate(someDate) {
return moment(someDate).format('MM/DD/YYYY')
}
我的 package.json 看起来像这样:
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist"
],
"scripts": {
"build": "tsc",
"publish-free": "npm publish --access public"
},
当我运行“npm run build”时,我在终端中收到一条错误消息,提示“找不到模块'moment'”。
我目前正在通过使用 npm 链接将其连接到我的主项目来测试包,我已经安装了 moment 但我无法通过构建阶段。
【问题讨论】:
-
您应该将其安装为开发依赖项,并将其标记为其他人的对等依赖项。
-
尝试运行
tsc --preserveSymlinks作为构建脚本。 -
添加为开发依赖项似乎是共识并且对我有用!谢谢。
标签: javascript node.js typescript npm