javascript - 使skypack成功构建带有JSX的npm包需要什么?
问题描述
我发布了一个 NPM 包,但 skypack 出于某种原因对它不满意,我不知道为什么。
加载https://cdn.skypack.dev/cytoscape-react@1.0.6重定向到https://cdn.skypack.dev/error/build:cytoscape-react@v1.0.6-pQwJpOFuFHUhInF8ChMh说:
* [1/5] Verifying package is valid…
* [2/5] Installing dependencies from npm…
* [3/5] Building package using esinstall…
* Running esinstall...
* @rollup/plugin-replace: 'preventAssignment' currently defaults to false. It is recommended to set this option to `true`, as the next major version will default this option to `true`.
* Failed to load node_modules/cytoscape-react/src/graph_wrapper.js
* Unexpected token (48:12) in cytoscape-react/src/graph_wrapper.js
* Install failed.
* Install failed.
第 48 行字符 12 显然是 JSX 开始的地方,所以它对 JSX 不满意,但我不确定它想从我这里得到什么。我试过给它一个babel.config.jspm
:
{
"presets": ["@babel/preset-react"]
}
它有 dev 依赖package.json
项,我也尝试了 babel config package.json
。
如果我在以下位置进行 webpack 配置,我可以构建一个包:
'module': {
'rules': [{
'test': /\.(js|jsx)$/,
'exclude': /node_modules/,
'use': {
'loader': 'babel-loader',
'options': {
'presets': ['@babel/preset-react'],
},
},
}],
},
Skypack 有一个信息页面https://www.skypack.dev/view/cytoscape-react突出了一些问题,但我认为没有什么会导致这类问题......
解决方案
推荐阅读
- excel - 从 Outlook 宏自动打开后无法调用 Excel 宏
- javascript - 避免在 React 中由对象字面量引起的重新渲染:如何处理对象中的变量?
- php - CakePHP 3 - 分隔 JOIN 条件时使用不同的表别名
- jquery - 三消比赛
- google-chrome - 如何在 Chromebook 上使用 Assembla SVN 更新和提交?
- html - 更改 div 与背景图像之间的弹性间距
- c# - 来自 Azure 的 .net 核心流文件并调整大小
- bash - Bash PS1 提示设置 \h 在第一个点之后去除主机名
- google-bigquery - 在标准 SQL / BigQuery 中将 YYYYMMDD 字符串转换为日期
- java - 匿名内部类中不允许使用 Java continue 语句