lodash - 如何使用 svelte 导入 lodash?
问题描述
我只是想导入 lodash import _ from 'lodash';
,并且一直出现以下错误:
rollup v2.23.0
bundles src/main.js → public\build\bundle.js...
[!] (plugin commonjs) SyntaxError: Unexpected token (434:48) in C:\my-svelte\node_modules\lodash\lodash.js
node_modules\lodash\lodash.js (434:48)
432:
433: /** Detect free variable `process` from Node.js. */
434: var freeProcess = moduleExports && freeGlobal.process;
^
435:
436: /** Used to access faster Node.js helpers. */
SyntaxError: Unexpected token (434:48) in C:\my-svelte\node_modules\lodash\lodash.js
at Object.pp$4.raise (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:15135:13)
at Object.pp.unexpected (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:12906:8)
at Object.pp$3.parseIdent (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:15086:10)
at Object.parseIdent (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:18737:27)
at Object.parseIdent (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:18969:27)
at Object.pp$3.parseSubscript (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:14380:62)
at Object.parseSubscript (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:18640:37)
at Object.pp$3.parseSubscripts (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:14355:24)
at Object.pp$3.parseExprSubscripts (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:14340:21)
at Object.pp$3.parseMaybeUnary (C:\my-svelte\node_modules\rollup\dist\shared\rollup.js:14314:17)
我曾经npx degit sveltejs/template my-svelte
创建应用程序。
我也试过lodash-es
了,同样的事情:[!] (plugin commonjs) SyntaxError: Unexpected token (13:46) in C:\my-svelte\node_modules\lodash-es_nodeUtil.js
。
这绝对是一个与 lodash 相关的问题,特别是与第 434 行有关。我尝试导入的其他所有内容都可以正常工作:
import {v4} from 'uuid';
import {Subject} from "rxjs";
import ReconnectingWebSocket from 'reconnecting-websocket';
...
编辑:问题是由import replace from '@rollup/plugin-replace';
in rollup.config.js
:(
现在我需要弄清楚如何在没有@rollup/plugin-replace
...的情况下将 .env 变量导入 Svelte
解决方案
我使用lodash-es
并且工作正常。我什至可以很好地摇晃树木。
<script>
import { upperCase } from 'lodash-es';
export let name;
</script>
<p>{upperCase(name)}</p>
推荐阅读
- discord.js - 我希望能够在创建时覆盖频道的权限
- mysql - 从 Web 服务器 API 并行调用时,AWS RDS 上的休眠 MySQL 连接数快速增加
- git - 在拉取请求和合并期间添加新文件
- react-native - 当触摸点在多个可触摸元素之间移动时,如何跟踪当前触摸的元素?
- python - 通过转置和设置其他列的值重新排序数据帧(熊猫)
- json - 如何解决json加载问题?
- javascript - blob 无法识别字体文件类型
- css - CSS Bootstrap Grid - 包装 Div 不是从其上方 Div 的底部开始
- python - Tensorflow - 在生产中尽可能高效地执行模型
- applescript - 运行 Apple 脚本时自动化失败