【问题标题】:Gulp-CSS-Clean implicitly has an 'any' typeGulp-CSS-Clean 隐式具有“任何”类型
【发布时间】:2020-11-16 14:38:40
【问题描述】:

尝试在 Windows 上本地运行新的 Eleventy 网站。相同的代码库可以在其他人的计算机上运行,​​但由于“缺少”CSS 文件,我无法启动它。

[4] `TemplateWriterWriteError` was thrown
[4] > (./src/_includes/layouts/about.html)
[4]   Error: template not found: css/critical.css

虽然奇怪的是,我可以在我的输出 dist 文件夹中看到 css/critical.css 文件。

不太清楚问题从哪里开始,但我在 VSCode 中注意到的第一件事是 requires(...'gulp-clean-css') 有三个点(通过“...”显示在该代码中),当悬停时表明没有找到该模块的声明,并且包的索引文件隐式具有“任何”类型。

这个“可能”有潜力,因为 gulp-clean-css 包用于生成据称丢失的 critical.css 文件。

阅读表明这是一个很容易解决的 TypeScript 问题。

解决方案:您所要做的就是编辑您的 TypeScript 配置文件 (tsconfig.json) 并添加一个新的键值对:"noImplicitAny": false

来源:https://medium.com/@amandeepkochhar/typescript-error-could-not-find-a-declaration-file-for-module-xyz-dfbe6e45c2bd

但没有详细说明该 tsconfig 文件的放置位置。 它在 Eleventy 根文件夹中吗?还是在包裹里?

另外,那条线还有什么意思? 例如。我找到了这个示例文件,可能就足够了:

{
  "compilerOptions": {
    "module": "commonjs",
    "esModuleInterop": true,
    "target": "es6",
    "moduleResolution": "node",
    "sourceMap": true,
    "outDir": "dist"
  },
  "lib": ["es2015"]
}

当然,我可能在这里追随红鲱鱼。 但如果有人对如何解决这个问题有任何建议,非常感谢!

【问题讨论】:

  • 可能是 Windows 机器上的路径解析不正确。你能尝试更新css/critical.css`` to ./css/critical.css```
  • @Drag13 感谢您的建议。它不起作用,但路径的想法至少让我有一些东西可以探索一段时间,并希望能提供一些东西????

标签: typescript gulp eleventy


【解决方案1】:

Typescript 原来是一个红鲱鱼。 出于某种原因,某些 gulp 插件无法在我的 Windows 10 设置中正常工作(例如 gulp-clean-css 和 gulp-imagemin)

虽然花了一些时间,但对我来说最好的解决方案是转到 WSL。 即安装Linux子系统,在Linux上开发。 然后我发现插件运行良好。

如果您不熟悉 WSL 安装,这里可能有点长。 但它确实需要对您正在做的事情有一个很好的了解,所以也许先查看一些 WSL 信息。 希望下面的链接可以工作一段时间,因为它们是我关注的,所以我会发布它们以防他们帮助其他人。

视频:https://www.youtube.com/watch?v=_fntjriRe48

发帖:https://fatsackfails.com/posts/eleventy-windows/

【讨论】:

    猜你喜欢
    • 2018-05-30
    • 2021-06-09
    • 2021-07-20
    • 1970-01-01
    • 1970-01-01
    • 2020-02-20
    • 1970-01-01
    • 2021-08-16
    相关资源
    最近更新 更多