【问题标题】:ERROR in ./ansi-html 1:0 Module parse failed: Unexpected character '#' (1:0)./ansi-html 1:0 中的错误模块解析失败:意外字符 '#' (1:0)
【发布时间】:2020-06-30 16:36:41
【问题描述】:

我正在学习 Angular js。当我运行 ng serve --open 时出现以下错误

ERROR in ./ansi-html 1:0
Module parse failed: Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type
> #!/bin/sh
| basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")

angular CLI 版本为 6.2.0

节点版本为 8.11.4

npm 版本为 6.4.1

ansi-html 文件为

#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")

case `uname` in
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac

if [ -x "$basedir/node" ]; then
  "$basedir/node"  "$basedir/node_modules/ansi-html/bin/ansi-html" "$@"
  ret=$?
else 
  node  "$basedir/node_modules/ansi-html/bin/ansi-html" "$@"
  ret=$?
fi
exit $ret

如果我删除第一行,那么错误是

ERROR in ./ansi-html 1:18
Module parse failed: Unexpected token (1:18)
You may need an appropriate loader to handle this file type.
> basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
| case `uname` in
i ?wdm?: Failed to compile.

【问题讨论】:

    标签: angularjs npm


    【解决方案1】:

    大家好!今年早些时候,我在我的 Windows 机器(Windows 10 Enterprise)上遇到了同样的问题。

    原因?

    我不知道为什么会发生这种情况。

    解决方案?

    你必须从你的机器上完全卸载 node.js。

    我是如何解决我的问题的?

    1. 首先,我使用以下命令进行了缓存清理:“npm cache clean --force" 不带引号。
    2. 其次,我使用 iobit 卸载程序软件卸载了 node.js(我只是明确表示没关系)。

    3. 第三,我删除了nmp-cache C:\Users\YOURNAME\AppData\Roaming 中的文件夹

    4. 第四,我从 users\USER DIRECTORY 中删除了 .npmrc 文件(如果看不到此文件,则需要从文件资源管理器选项中显示隐藏的文件、文件夹和驱动器)。
    5. 第五,我删除了同一位置的所有离子文件(用户\用户 DIRECTORY ionic 之前已安装)。

    现在,重新启动您的计算机;访问https://nodejs.org 并下载新的node.js 安装程序,在安装过程中会询问您是否要为node.js 安装其他工具,请跳过并继续完成。 确认您已成功安装 node.js,运行以下命令:“node --version && npm --version”,不带引号。你应该得到这样的东西:

    v11.11.0

    6.7.0

    如果此时一切都很好,请随意安装您的 Angular;命令:“npm install -g @angular/cli”,不带引号(-g 标志将全局安装它,因此您可以从 PC 上的任何位置创建一个新的 Angular 项目)。再次,确认安装;运行:“ng --version”,你应该有这样的东西:

    Angular CLI:7.3.6

    节点:11.11.0

    操作系统:win32 x64

    角度:7.2.9

    继续创建一个新的 Angular 项目,就在你这样做之前;确保您当前位于正确的目录中。命令:“ng new project-name”,不带引号(项目名称是您想要命名项目的名称)。成功安装后,通过打开项目目录运行项目,例如“cd project-name”不带引号,然后“ng serve --open”(--open 标志在您的默认 Web 浏览器中打开项目,需要几秒钟) .

    干杯。

    【讨论】:

    • 大多数人都在寻找更多关于问题所在和/或您的解决方案将如何提供帮助的解释。你想扩展一下这个答案吗?
    【解决方案2】:

    Windows 10 机器上的最新版本也存在同样的问题:

    NPM : 6.4.1
    Angular CLI: 7.3.4
    Node: 10.15.2
    OS: win32 x64
    Angular: 7.2.7
    ... animations, common, compiler, compiler-cli, core, forms
    ... language-service, platform-browser, platform-browser-dynamic
    ... router
    
    Package                           Version
    -----------------------------------------------------------
    @angular-devkit/architect         0.13.4
    @angular-devkit/build-angular     0.13.4
    @angular-devkit/build-optimizer   0.13.4
    @angular-devkit/build-webpack     0.13.4
    @angular-devkit/core              7.3.4
    @angular-devkit/schematics        7.3.4
    @angular/cli                      7.3.4
    @ngtools/webpack                  7.3.4
    @schematics/angular               7.3.4
    @schematics/update                0.13.4
    rxjs                              6.3.3
    typescript                        3.2.4
    webpack                           4.29.0
    

    【讨论】:

    • 我没有找到原因和解决方案。我尝试降级节点版本,终于可以正常工作了。您可以检查旧节点版本。但这就像反复试验直到找到合适的版本..不是解决方案只是快速修复。
    【解决方案3】:

    当 Visual Code 意外从“protactor”导入 { $ } 时,我的解决方案被破坏了。 “ng build”之后的错误日志很长,但与这个主题非常相似。 删除不需要的行就完成了。

    【讨论】:

      猜你喜欢
      • 2020-06-09
      • 1970-01-01
      • 2019-08-04
      • 1970-01-01
      • 1970-01-01
      • 2019-06-03
      • 1970-01-01
      • 2021-03-18
      • 2019-10-27
      相关资源
      最近更新 更多