【问题标题】:parcel build error: plugin is not a function包裹构建错误:插件不是函数
【发布时间】:2021-04-13 05:39:59
【问题描述】:

我正在尝试构建一个简单的网络项目

这样的项目结构

-src
--index.html
--index.js
--style.css
package.json
yarn.lock

我用这个安装了 parcel-bundler

yarn global add parcel-bundler

然后我运行 parcel build 命令

parcel build src/index.html

但是发生了错误,后面跟着这个日志

D:\playground\js\sample>parcel build src/index.html
×  D:\playground\js\sample\src\style.css:undefined:undefined: plugin is not a function
    at LazyResult.run (C:\Users\pc\AppData\Roaming\nvm\v15.14.0\node_modules\parcel-bundler\node_modules\postcss\lib\lazy-result.js:288:14)
    at LazyResult.asyncTick (C:\Users\pc\AppData\Roaming\nvm\v15.14.0\node_modules\parcel-bundler\node_modules\postcss\lib\lazy-result.js:212:26)
    at C:\Users\pc\AppData\Roaming\nvm\v15.14.0\node_modules\parcel-bundler\node_modules\postcss\lib\lazy-result.js:254:14 
    at new Promise (<anonymous>)
    at LazyResult.async (C:\Users\pc\AppData\Roaming\nvm\v15.14.0\node_modules\parcel-bundler\node_modules\postcss\lib\lazy-result.js:250:23)
    at LazyResult.then (C:\Users\pc\AppData\Roaming\nvm\v15.14.0\node_modules\parcel-bundler\node_modules\postcss\lib\lazy-result.js:131:17)

我只是按照包裹官方文档的说明进行操作

我找不到解决办法

请帮帮我

【问题讨论】:

    标签: bundler parcel


    【解决方案1】:

    试试 --no-minify

    为什么公认的答案是“把婴儿和洗澡水一起扔掉?”

    parcel-bundler 仍然可以工作,但不是修复损坏的部分,而是为 Parcel 2 放弃了它,支持 Vue 2 SFC。

    构建 Rails 6/Vue 2 应用程序并从 webpack(er) 转换为 parcel,因此 Parcel 2 不适合我。 (要求人们升级,然后不提供升级路径或像样的文档,让我想起了太多的 webpack!)

    parcel build ./app/packs/entrypoints/*.js --no-minify

    这会禁用缩小,这至少为我消除了这个特殊错误。

    【讨论】:

    • ...谢谢。很有用,尤其是因为 parcel v2 有其自身的问题! (......我想发布而不用花一天时间弄清楚自上次以来的变化)。
    【解决方案2】:

    问题已解决:parcel-bundler 已弃用。使用“包裹”而不是“包裹捆绑器”

    【讨论】:

    • 不是按照官网的吗? parceljs.org/getting_started.html
    • @Kokodoko npmjs.com/package/parcel-bundler 它已被弃用...不是第一次文档成为我的痛点。开始后悔尝试使用 parcel ngl。
    • 在下面查看我的答案。我们中的一些人还不能(尽管很想)使用 Parcel 2,因为他们拒绝支持 Vue 2 SFC,由于依赖关系,它们再次无法升级到 Vue 3...
    【解决方案3】:

    package.json 如果你已经预设了脚本...

      "scripts": {
        "start": "parcel index.html",
        "dev": "parcel index.html",
        "build": "parcel build index.html"
      },
    

    ...只需运行

    npm run build
    

    否则使用此语法:

    npm run build index.html
    

    将 index.html 替换为您要构建的任何文件,但请确保它是相同类型的文件。

    【讨论】:

      猜你喜欢
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 2018-06-02
      • 2011-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多