找回密码
 立即注册
查看: 5923|回复: 4

解决npm install 安装慢!!!

[复制链接]

336

主题

520

回帖

3442

积分

管理员

积分
3442
QQ
发表于 2023-6-9 00:27:24 | 显示全部楼层 |阅读模式
安装慢的原因
: M. e8 I5 I7 n, ^. Y$ V7 s& B7 Anpm install 默认使用的安装镜像是国外的镜像,😒😒5 r2 l( h1 `3 \: q3 d9 B
所以在国内使用,会受到网络的限制,所以导致安装速度及其之慢,有的时候,会因为网速问题直接报错
* q# y* r9 p) ~+ P6 l& g5 y1 `( Y- b) g* T8 Z' i
解决方式
- b7 Y$ z- I( x1 E, I2 ^3 B方式一:更换npm的安装镜像源为国内的即可改变* `9 n0 I0 O! C' v
方式二:更换网络(一般不会这么做)' ]' T1 Z; T5 o

# B& ?1 v  f. ]【更换npm源】:
2 Q1 V* I) S$ D  w1 r' T* A- ~' A* t
8 w" m  F# B/ [$ J
npm config set registry https://registry.npm.taobao.org
. g; Y# V, @" K. _
如果没有报错就是已经切换成功,然后我们再次执行 npm install  l2 c* S  x+ J5 N8 [0 l
或者我们可以在安装的时候指定其安装镜像
& ^8 k( z' A& k) x+ E$ q) m, P" ?0 G2 p/ }2 |
npm install --registry=https://registry.npm.taobao.org
! {$ h  |/ G0 z7 ^
最后 我们可以查看一下, ]2 R& J7 o& Y$ L7 k( f4 [9 N
执行命令:9 l+ G& P. r  A% r1 l7 s) [: T

" \* ?! F6 I, @* o( u7 w
npm config get registry
回复

使用道具 举报

336

主题

520

回帖

3442

积分

管理员

积分
3442
QQ
 楼主| 发表于 2023-6-9 00:51:41 | 显示全部楼层
yarn安装依赖速度太慢的解决办法7 d( q7 @) }( W7 {/ G
/ N/ A, R* m$ [# ~( R' [
1、在用户目录文件夹下找到.yarnc文件(如我的是在:C:\Users\钟志胜\下)
' g1 n6 p7 B& f7 b+ f, R  [) e! @" P7 J
2、编辑.yarnc文件,添加如下内容
8 P4 y% Y; Q5 C4 W
registry "https://registry.npm.taobao.org"' L% q* M- b! `9 ~8 P
chromedriver_cdnurl "https://cdn.npm.taobao.org/dist/chromedriver"
/ w# s" \3 i8 M0 Aelectron_mirror "https://npm.taobao.org/mirrors/electron/"
, b9 [" r6 E: J, ]9 `( rlastUpdateCheck 1664005622411' O  X- l5 s) T$ z" l
phantomjs_cdnurl "http://cnpmjs.org/downloads"
4 F$ A1 k! h( |  y, K2 Y7 eprofiler_binary_host_mirror "https://npm.taobao.org/mirrors/node-inspector/"$ D, m" t$ O6 c) I" ~
sass_binary_site "https://npm.taobao.org/mirrors/node-sass/"9 U, I" Q% `0 q- r
sqlite3_binary_host_mirror "https://foxgis.oss-cn-shanghai.aliyuncs.com/"
' I2 ~1 r1 s. a/ \6 s
3、编辑后保存文件8 |, T" D5 R" f" H

) u9 u1 y/ `. c' b6 r4、设置为淘宝镜像
4 g; w: E% o  A  S% D5 H
npm config set registry https://registry.npm.taobao.org/
( @; d1 ]- C) ~: G8 I4 |& x3 J' D. t. oyarn config set registry https://registry.npm.taobao.org/

6 c4 A+ h* D4 t8 m# g
+ q% s1 e  v# T- r! U+ q% Y3 K5、查看当前镜像
. P( a1 q6 F4 P
npm get registry
9 W+ V/ z3 i$ X: `7 syarn config get registry

! s4 f- a# f& ?7 M; Y; l
3 L. U( J, Y$ g! M6、把项目下的yarn.lock文件删除& p) x' C' G. w. a6 Q( r; e) r
8 A! t$ M) u& `# P- M. P/ ?
7、重新执行yarn进行安装,速度有很大提升, }, u* _1 o- G" G1 ~0 Y% |% [
回复

使用道具 举报

336

主题

520

回帖

3442

积分

管理员

积分
3442
QQ
 楼主| 发表于 2023-6-9 01:08:09 | 显示全部楼层
npm安装任何包都报错的解决办法
. r" G  m) g6 o0 ]$ A+ y* p1 Z5 |) b- L5 e' c5 A6 w
不知道什么原因,安装nodejs后,用npm安装任何东西都报错:
  L2 k  f7 M* G! |8 B! ~3 b' y9 F9 Y# U
  1. C:\Users\Administrator>npm install express# g9 Z, k7 f8 f; b
  2. npm ERR! Windows_NT 6.1.7601
    : n& k& y/ v/ d. k, W
  3. npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "express"
      _4 m4 q; h0 Q6 f/ h9 o4 j9 j
  4. npm ERR! node v4.4.4
    % D* B/ q  o! }' g- N* b( X
  5. npm ERR! npm  v2.15.13 m' Z! S. L, M0 Z; c, X( {, P0 ^9 _0 h
  6. npm ERR! code ENOTFOUND! Z2 S; ~; Q6 _% {' _
  7. npm ERR! errno ENOTFOUND8 v* a! I" X# {* r/ O
  8. npm ERR! syscall getaddrinfo
    8 J- p. b: g- T

  9. ) s/ s1 U2 N0 E  u- U3 U
  10. npm ERR! network getaddrinfo ENOTFOUND xn--rvg xn--rvg:80
    + R; c3 q7 l7 }
  11. npm ERR! network This is most likely not a problem with npm itself
    % c# O( C% z! g4 M1 q
  12. npm ERR! network and is related to network connectivity.
    9 G9 p0 f( l$ `! K) p" t1 \+ {; @
  13. npm ERR! network In most cases you are behind a proxy or have bad network settings.
    ! b6 J' C- s. T, Y
  14. npm ERR! network9 Q, ~5 M2 |. M9 D
  15. npm ERR! network If you are behind a proxy, please make sure that the
    1 C0 _2 q9 v% l* W4 S
  16. npm ERR! network 'proxy' config is set properly.  See: 'npm help config'
    ) d4 o* [. M8 @9 Q. p) ]/ u

  17. ( e/ u3 U, u+ ^3 N! A
  18. npm ERR! Please include the following file with any support request:3 Y6 t( L. o7 |1 }6 _8 i. b
  19. npm ERR!     C:\Users\Administrator\npm-debug.log
复制代码

: U; E. }  `) }) w7 X/ Z+ X, L  `4 @1 `' ?2 F
然后查npm的配置,也是一脸懵逼
; F$ B, Y/ S& X5 D/ R
! @) f- y" C2 c* d5 K# O9 E
  1. + \2 c; b+ k% @% \
  2. C:\Users\Administrator>npm config ls
    . }7 ]+ }: |8 T6 H
  3. ; cli configs
    / d5 ~, j' F4 |
  4. user-agent = "npm/2.15.1 node/v4.4.4 win32 x64"
    $ U* @. q7 ?% r5 M2 k

  5. * x1 i' K$ D9 \
  6. ; userconfig C:\Users\Administrator\.npmrc# {! s- I0 h7 Q6 z
  7. disturl = "https://npm.taobao.org/dist"  v/ o0 }6 k& {( b8 t
  8. proxy = "http://xn--rvg/"
    / ^/ }5 J) a' N/ @- {
  9. registry = "http://registry.npmjs.org/"* t  j8 R8 V& n& I
  10. strict-ssl = false
    $ K1 G# _* ]& K% F. |# Q" k
  11. unsafe-perm = true
    4 l  r9 \! A6 e5 i" Y
  12. , ^+ c2 r7 X2 p
  13. ; builtin config undefined0 X8 f3 o9 N' V7 A/ H5 l& y
  14. cache = "C:\\Program Files\\nodejs\\node_global"
    : c% u# w7 J+ Z& W% Y' j9 ~
  15. prefix = "C:\\Program Files\\nodejs\\node_global"
    4 `. a! f/ {, e2 a1 i$ D

  16. 1 e2 A4 |4 P+ V) i2 n" F
  17. ; node bin location = C:\Program Files\nodejs\node.exe" B1 C. e5 v) q1 j
  18. ; cwd = C:\Users\Administrator3 h' z7 r6 I4 t/ H7 t0 G/ w
  19. ; HOME = C:\Users\Administrator
    8 F, J7 e8 v1 C! E$ u# H
  20. ; 'npm config ls -l' to show all defaults.
复制代码
3 [0 x+ e9 _0 s% ?- }8 C2 X4 G! b
' G8 H. ?. X- }9 g% A5 R
根据网上的教程,换了N种镜像,问题依旧存在' ~1 u3 H9 ]3 X, T; [% k

) L8 x8 i& T3 z! d! L; V9 `然后终于在网上找到个解决办法:1 b5 ^$ p% T2 m  I) y/ R% `+ ?# b
3 U; U  y0 m3 S# Q& [1 ^  H
  1. 解决办法:
    ) ~) E0 g+ Q1 ?  |6 z

  2. " J2 B  g/ y5 ^* J, `: P  X7 y
  3. 1、执行:
    ; ^( t/ n6 e5 u: ^! W. {% d% Z5 P# n

  4. 8 S" p! x- n+ }: g
  5. npm config get proxy& v0 ^/ d- D4 r: Q6 x2 C
  6. npm config get https-proxy
    6 \' c( j" O2 A) o
  7. 如果返回值不为null,继续执行:9 |% d. N  s2 I: u
  8. (这一步很重要,一定要保证两个命令的返回值都为null,话说回来,应该出现这个错误这两个返回值有不为null的)8 F7 [( X" g" i6 {& N/ z- X
  9. npm config set proxy null
    8 k4 u- A+ u; o6 {4 q; \( n
  10. npm config set https-proxy null& \1 O4 W$ r$ e1 i7 ^/ p- T
  11. 2、执行:
    2 d9 e; P4 ]$ x$ @
  12. npm config set registry http://registry.cnpmjs.org/
复制代码
) @" U3 c' q" h; r3 N0 ]
" M% Z. ]# L8 V3 U5 Q
然后你就可以愉快的安装cnpm了
- K- n( m8 }  T* L3 b
2 z+ N# g& T% U5 C: ?
  1. npm install -g cnpm --registry=https://registry.npm.taobao.org
复制代码

. r7 T2 K! q$ p. J5 }% t然后你就可以更加愉快的用cnpm安任何东西了
回复

使用道具 举报

336

主题

520

回帖

3442

积分

管理员

积分
3442
QQ
 楼主| 发表于 2023-6-9 01:33:03 | 显示全部楼层
解决使用yarn安装依赖出现“The engine "node" is incompatible with this module. Expected version "^14.18.0 || ^16.14.0 || >=18.0.0". Got "17.9.0"”的问题, [& z% |  y. b( t3 l2 ?
4 C1 |7 s, W$ z0 T, m2 p- h
1、问题描述+ J! t' X; c8 N% H1 |! z
. |( h* H" R1 z5 ^, {9 M
某天在使用yarn安装依赖的时候,突然出现如下错误导致安装依赖终止:
& m% @$ p: l5 A
2 G1 K7 v4 H2 {( B9 D" G6 b
  1. The engine "node" is incompatible with this module. Expected version "^14.18.0 || ^16.14.0 || >=18.0.0". Got "17.9.0"
复制代码

0 }4 x) i+ ^( f4 g% I3 ]7 m5 e: V, @( l* \) x  \* |
2、解决办法
  Q+ U1 b( e/ ?7 Q/ I' S8 s使用如下命令忽略错误:) ~" b0 r% Z! u2 r6 X2 {4 c1 K

: `( X. J- B. v& P/ c% ayarn config set ignore-engines true
) L, ~4 U. m( g2 t. y( j
+ y1 [9 }; l8 ^0 H然后再使用yarn进行安装即可
回复

使用道具 举报

336

主题

520

回帖

3442

积分

管理员

积分
3442
QQ
 楼主| 发表于 2023-6-9 03:02:21 | 显示全部楼层
  1. tyarn
    * U( o& a: r# `" ?; B3 h
  2. yarn install v1.22.19" l9 G' e6 i: G8 ^9 o
  3. [1/4] Resolving packages...
    % f$ g* ^6 B# @# ]7 d3 y
  4. [2/4] Fetching packages...6 g$ \0 i' F5 p2 [1 o) r
  5. [3/4] Linking dependencies...$ T- T5 O* f; v  Z9 K
  6. warning " > sass-loader@8.0.2" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
    # {8 q/ k7 G; \( F. z' [  h" `
  7. [4/4] Building fresh packages...
    1 x: O) F1 Q0 |! n6 ^  _
  8. Done in 19.63s.. N& N' T; i5 l6 B3 Y, E0 F
  9. PS D:\jsq\formG\form-generator-dev\form-generator-dev> npm run dev
    . W% B* h9 a/ n: r
  10. ; S- a; b$ D. @8 s! B5 R/ c2 x7 d
  11. > form-generator@0.2.0 dev: H) Y, i  |3 @* |( `6 R! u' T
  12. > vue-cli-service serve
    5 Z6 Q0 @# ~; ~! P5 Z

  13. # D" D! [7 h) `
  14. INFO  Starting development server...$ \7 G9 S! V1 p/ `  E0 b
  15. 10% building 4/6 modules 2 active D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\hot\dev-server.jsError: error:0308010C:digital envelope routines::unsupported
    * f0 N$ t" h+ `
  16.     at new Hash (node:internal/crypto/hash:71:19), j/ Q) u" I# s4 \" {3 ?5 n
  17.     at Object.createHash (node:crypto:133:10)
    : e) \) K" `+ S3 v/ o: }+ K" J0 Y
  18.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53)6 ?" B+ O# w/ o. Y* l
  19.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)+ c% i+ ]$ B* h# ]2 l
  20.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)) k: V0 U% G5 S" J8 J
  21.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:5# y+ o4 Z1 b7 L
  22.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:12' q- v, N" s  z+ e* n7 r! l! A! T8 I
  23.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3
    $ s% S7 P$ z3 p6 g8 s" K& b
  24.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    7 W) T1 n8 H* t: R4 g# Z8 A7 V
  25.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:221:10). ?9 B5 l2 \$ M4 q1 x" l
  26.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:236:3% M4 V: n9 m; x& s) A
  27.     at runSyncOrAsync (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:130:11)+ B# K8 _* N  f; ^
  28.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
    * d4 s( j; X; r. u+ a9 E+ `
  29.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    ) I  Y. F4 z+ V
  30.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16): w' N5 ~& o0 S0 W0 h/ c
  31.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9* f  S& m  r  w  E* l
  32. Error: error:0308010C:digital envelope routines::unsupported  [5 [3 O" a6 |
  33.     at new Hash (node:internal/crypto/hash:71:19)
      K8 }# {6 J6 f$ y! o0 W
  34.     at Object.createHash (node:crypto:133:10)
    9 Q2 `* u" r0 {& W( n$ g  D  a6 a
  35.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53)7 O8 ?8 I" f4 @& ?5 O$ r. ~" j
  36.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)) k  ^6 Q) [7 z% i) G+ S# K
  37.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)
    + J3 z4 ?# X, I
  38.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:5
    ) X4 Y& ^! J) _" Q" Q
  39.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:12
    1 E% o+ I" h# ?3 q8 j; q) u. g
  40.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3: x1 ]6 S  `6 g: M8 l& g# k" y
  41.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    ( M3 }- |' s7 m3 }8 I7 q
  42.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:221:10)' t# i$ l; w& Q$ k) v, S" I
  43.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:236:3! J- i$ n1 O8 j: z  A
  44.     at runSyncOrAsync (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:130:11)
    ; U* s4 S' K5 S" J: D2 X  S
  45.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
    & B: @: p# B- I. o1 M8 k
  46.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    . \4 r: o' _9 i8 c5 E( E4 Y) y7 W
  47.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)! H# n  V0 A. P8 I5 ^# Y
  48.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
    - R2 s! b* I' P
  49. node:internal/crypto/hash:71) g7 m! ~6 K/ q' r
  50.   this[kHandle] = new _Hash(algorithm, xofLen);* z5 k4 B' D- s4 t' r- R
  51.                   ^5 c/ u' E6 ~( O- g4 b6 o6 [7 R
  52. 2 B- a# |' |! A" r- [- |! r) p
  53. Error: error:0308010C:digital envelope routines::unsupported% `2 N! U& y5 ^! Z3 |* B
  54.     at new Hash (node:internal/crypto/hash:71:19)
    1 c# s4 ]: I6 E+ Q- I
  55.     at Object.createHash (node:crypto:133:10)/ E% @8 o* A, [
  56.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53)
    ; y9 o) d2 W% `, H
  57.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)+ o1 ]" O# J$ e. B) F* `* x
  58.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)5 W2 S2 d! S3 t, S8 e- T* J# O
  59.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:5
    ) {$ k  {3 U! ^6 g7 x$ b& R2 D: d( C
  60.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:12
    8 F$ r# D% o) z4 k% y& P; s) D
  61.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3# x. I7 F1 [2 f- [
  62.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)6 a) p' M% l. r- w3 U, t0 i" O
  63.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)- {9 o, t) e0 c3 k0 F; F
  64.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)* T: }; _# U* C" l5 n
  65.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9! g; P% r- T' J
  66.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\graceful-fs\graceful-fs.js:123:16/ s1 o" a. @2 e: |# u3 X
  67.     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {# g" _  T2 C# g" [8 l4 c  d0 v; j
  68.   opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],2 x) S7 K; r1 C# \5 U3 f' O1 s, ?
  69.   library: 'digital envelope routines',
    4 j  C' F  r! w7 O: N1 K$ w
  70.   reason: 'unsupported',
    & C  U3 V$ V' i: ^* [  b
  71.   code: 'ERR_OSSL_EVP_UNSUPPORTED', C& \- `7 }* n2 S
  72. }
    ) ?0 Y( J: y& U$ p0 T1 b
  73. & o# ~' |0 T" J1 j4 H# H3 P5 u2 l
  74. Node.js v18.16.0
    8 q$ H5 q) N; U3 z% ~8 i
  75. NativeCommandExitException: Program "npm.cmd" ended with non-zero exit code: 1.
复制代码
# F! K( B" c7 ~. y# g5 ]- x
. [2 x+ x- Z/ V, o: x0 U6 T
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|通达创业无忧 ( 粤ICP备2023021749号|粤公网安备 44030402006137号 )

GMT+8, 2025-12-18 12:56 , Processed in 0.012663 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表