ant-design / ant-design-pro

👨🏻‍💻👩🏻‍💻 Use Ant Design like a Pro!

Home Page:https://pro.ant.design

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

js 语法错误,编译不报错,阻塞在进度条步骤

inkinworld opened this issue · comments

信息:

os: mac OS 10.13.3
version: "1.3.0"
npm: 5.6.0
node: v9.4.0

现象:

npm run start, 显示如下信息,始终阻塞
Starting the development server... build [=====] 91%

期待结果:

正常提示语法错误

复现步骤:

  1. git clone https://github.com/ant-design/ant-design-pro.git
  2. 进入 ant-design-pro 目录, npm install
  3. 将 ant-design-pro/src/routes/User/Login.js 第73 行修改为
    <a style={{ float= 'right' }} href="">
  4. npm run start 返回报错信息
  5. ctrl + c 结束开发模式
  6. 重新 npm run start, 显示如下信息,始终阻塞
    Starting the development server... build [=====] 91%

在进行中项目中发现的,可稳定在 ant-design-pro 中复现

补充

我尝试过使用 npm start过后就一直是这个页面 中 删除 node_module 的方法,只有首次编译可以正常报错,然后按照复现步骤依操作旧有问题。

Translation of this issue:


js syntax error, compile error, block in progress step

information:
Os: mac OS 10.13.3
Version: "1.3.0"
Npm: 5.6.0
Node: v9.4.0

phenomenon:
 Npm run start, shows the following message, always blocked
Starting the development server...   Build [=====] 91%

Expected result:
Normal prompt syntax error

Reproducing steps:

  1. git clone https://github.com/ant-design/ant-design-pro.git
  2. Enter the ant-design-pro directory, npm install
  3. Change line 73 of ant-design-pro/src/routes/User/Login.js to
    <a style={{ float = 'right' }} href="">
  4. npm run start returns an error message
  5. ctrl + c end development mode
  6. Restart npm run start, show the following message, always blocked
    Starting the development server...   Build [=====] 91%

Discovered in ongoing projects can be stably reproduced in ant-design-pro

@sorrycc 看看

我也出现这个问题,从昨天开始,编译就一直卡在91%不动了,但不确定是不是语法错误所致

commented

Window64系统也出现类似问题,执行cnpm install一直是等待状态。
| [56/58] Installing string-convert@^0.2.0

我也遇到这个问题了,解决办法就是把roadhog降低到了2.3.0,然后就好了。虽然也不太清楚为什么~

@279095090 感谢~

我这没法重现,大家可以试下几个方法:

  1. HARD_SOURCE=none npm start
  2. 换 yarn,有效的话,应该是和 umijs/umi#526 有关

同样有这样的问题,内存飙升,然后栈溢出

语法错误的时候回出现,,
Compiling...

build [================== ] 91%
<--- Last few GCs --->

[6220:0000023A6E5C56F0] 398681 ms: Mark-sweep 1410.3 (1450.0) -> 1410.3 (1450.0) MB, 1223.9 / 0.0 ms last resort GC in old space requested

<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 000000D0A9BA5E71
1: formatError(aka formatError) [D:\web\zndz\server\node_modules_webpack@3.12.0@webpack\lib\Stats.js:~186] [pc=0000005384120F68](this=000000930C282311 ,e=000003329B55B981 )
2: arguments adaptor frame: 3->1
3: map(this=0000010A200051B1 <JSArray[1]>)
5: toJson [D:\web\zndz\server\node_modules_webpack@3.12.0@webpack\lib\Stats.js:230] [byt...

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Hi all, 这个问题通过 @sorrycc 提示的方式解决了,

解决方式

运行时执行
HARD_SOURCE=none npm start

可修改 package.json
"start": "HARD_SOURCE=none npm run _start", "_start": "cross-env ESLINT=none roadhog dev",

WHY (猜测)

为了加速构建, roadhog 使用了 hard-source-webpack-plugin插件,对模块进行缓存,如果首次运行(生成缓存时)出现了错误,关闭进程在启动服务将会无法正常执行。该插件对热加载,require.context 语法的使用有一定影响,割以永治=.=

副作用

关闭后将每次全量构建

这种方式试了后还是不好使,在nodemodules的.bin文件中修改了roadhog.cmd

node  --max-old-space-size=4096 "%~dp0\..\roadhog\bin\roadhog.js" %* 

这样解决了这个问题;

commented

同样的问题,我修改了 .roadhogrc.mock.js 的export 对象 和 package.json

    "dev": "cross-env PROXY=1 ESLINT=true roadhog dev",
    "dev:no-proxy": "cross-env PROXY=0 ESLINT=true roadhog dev",
    "dev:sv-proxy": "cross-env PROXY=2 ESLINT=true roadhog dev",

就遇到了此91%现象, 删除node_modules重装恢复,一直用yarn

Edit: 好像只删除/node_modules/.cache/hard-source/就可以

关键我是启动的时候没问题,正常开启,但是开发过程中,代码没写完,它也认为是错误,就自动卡在91%编译,然后dev服务器就崩了。终端终止后,还要手动kill进程,才能退出。大佬们考虑解决一下么?

升级最新的 roadhog 就能解决问题了
记得删除 node_modules

重装下依赖,已默认关闭了 hard source。