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

解决npm install 安装慢!!!

[复制链接]

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
发表于 2023-6-9 00:27:24 | 显示全部楼层 |阅读模式
安装慢的原因' `; \: `' \6 ]- l
npm install 默认使用的安装镜像是国外的镜像,😒😒
' S$ O  K! f8 s. p( [; Q) p3 F/ g所以在国内使用,会受到网络的限制,所以导致安装速度及其之慢,有的时候,会因为网速问题直接报错4 K* X8 J' _/ x- H% d+ d& G# z

3 B+ y, [+ P" k: E; f/ d0 u3 V解决方式4 Z: y( t5 H, a3 z  R
方式一:更换npm的安装镜像源为国内的即可改变( L0 A4 n' Z, q0 i9 j6 @
方式二:更换网络(一般不会这么做)! q) K$ J7 m- ?, m
: R7 x) \# O( ^. s' R3 Z
【更换npm源】:
, ]2 d' o5 Q) {# h7 Y5 _8 C/ e! z4 L# q5 s: e4 H' a
npm config set registry https://registry.npm.taobao.org

; x+ N) @1 l* x+ V6 H6 P: X如果没有报错就是已经切换成功,然后我们再次执行 npm install
2 ^3 B  q/ Y. o- t5 F) G' W或者我们可以在安装的时候指定其安装镜像  W, i+ T3 L; J/ R0 D  ?
5 h& G% b& z% ~; Q$ v( R. [0 O
npm install --registry=https://registry.npm.taobao.org

. F( g' ~3 j/ ]' m: K  X- o最后 我们可以查看一下
+ s7 o+ d$ N: d2 V. ~- p, f执行命令:
" i/ C; J' h1 s! w8 k* y  L# q8 C- _6 e: W
npm config get registry
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-6-9 00:51:41 | 显示全部楼层
yarn安装依赖速度太慢的解决办法
0 e/ m  n# w8 U1 |/ Y2 F, T& T% f! e) ^% q
1、在用户目录文件夹下找到.yarnc文件(如我的是在:C:\Users\钟志胜\下)
  e& R: }6 T, h2 g1 D/ x! Y% q& w1 p5 Y* Z6 \& m( ?
2、编辑.yarnc文件,添加如下内容
  `$ P6 w: \6 ]; w" ~% x' p; G
registry "https://registry.npm.taobao.org"
0 i/ f5 B8 _2 \) ochromedriver_cdnurl "https://cdn.npm.taobao.org/dist/chromedriver"
  M8 H2 x. v3 q4 G/ {7 o! ielectron_mirror "https://npm.taobao.org/mirrors/electron/"! f0 O! S* `4 B9 K/ _! U) K
lastUpdateCheck 1664005622411) T2 \0 t8 l5 [  O: H3 t
phantomjs_cdnurl "http://cnpmjs.org/downloads"# o. A) m/ {) Y8 t
profiler_binary_host_mirror "https://npm.taobao.org/mirrors/node-inspector/", M0 I7 P9 a: S
sass_binary_site "https://npm.taobao.org/mirrors/node-sass/"$ m& j4 s4 s) @5 Y
sqlite3_binary_host_mirror "https://foxgis.oss-cn-shanghai.aliyuncs.com/"
5 A9 t/ @5 n5 z# _$ F& D4 Q
3、编辑后保存文件
0 O6 W- A" C1 s. u, F* M& p& k3 V8 |6 C, ^8 g* ?
4、设置为淘宝镜像
  }6 o4 M# B. \1 b  V3 O
npm config set registry https://registry.npm.taobao.org/
1 i' N; O& k7 Tyarn config set registry https://registry.npm.taobao.org/
% |% y3 ]1 v; U( y( o/ z( \9 C

3 B5 g6 G* M8 ^# @( i! I2 N5、查看当前镜像
( W- k# i' p! K3 S2 s
npm get registry ( m" C- M* V( s  u! g
yarn config get registry

( h, E9 J; v. ~7 ?9 m7 X6 N" K/ k. H% Q; P# u3 D
6、把项目下的yarn.lock文件删除3 C  w+ x$ v3 A4 b

6 S- P' N& D1 S7 F1 S3 t) ~( ]7、重新执行yarn进行安装,速度有很大提升
( {$ k) M6 x+ J
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-6-9 01:08:09 | 显示全部楼层
npm安装任何包都报错的解决办法8 `, {6 G- W, K) P* k# n; O& \
' U1 F0 p% r! J: j, {' h
不知道什么原因,安装nodejs后,用npm安装任何东西都报错:" w( w& g( n9 \7 Q7 q6 M# u5 {& g
  1. C:\Users\Administrator>npm install express* R& k! l) A% W8 B% D- \
  2. npm ERR! Windows_NT 6.1.7601
    $ y( A+ [7 k; \$ s6 ^* w* q
  3. npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "express"( j. x4 b- Y+ Z6 F9 P" j3 |
  4. npm ERR! node v4.4.49 s! _8 O( f( D& J, A. P
  5. npm ERR! npm  v2.15.12 h7 D9 N% H' c1 G
  6. npm ERR! code ENOTFOUND
    0 ?. c% ~) g: j' ~/ w0 i
  7. npm ERR! errno ENOTFOUND- N& }3 P  Q" k% s- [
  8. npm ERR! syscall getaddrinfo
    6 x9 p2 x  a. n) ?0 ^9 P0 b

  9. , Q/ L) u6 k8 a+ ^% |. O
  10. npm ERR! network getaddrinfo ENOTFOUND xn--rvg xn--rvg:80
    ! r; F' c% \, A+ R
  11. npm ERR! network This is most likely not a problem with npm itself
      D' d+ ]  _5 c
  12. npm ERR! network and is related to network connectivity.  N$ r  o1 a& n; F8 ~
  13. npm ERR! network In most cases you are behind a proxy or have bad network settings.
    1 T. d' |0 Z- N  F
  14. npm ERR! network4 A; C; A$ H9 a; x# Q1 n
  15. npm ERR! network If you are behind a proxy, please make sure that the
    & s2 Z* A# q$ }1 N; A" l' D
  16. npm ERR! network 'proxy' config is set properly.  See: 'npm help config'9 _6 M  K5 J) P; C( b
  17. " _3 ]- B* y) |! F
  18. npm ERR! Please include the following file with any support request:
    1 r/ m# V/ S$ L$ ?
  19. npm ERR!     C:\Users\Administrator\npm-debug.log
复制代码
* B. Q  r! M8 p
! L& o+ D+ `: ?/ T, u# A) X5 V6 g% g0 d
然后查npm的配置,也是一脸懵逼
  f5 D, q  g8 e; i9 v
" K% K: o; S/ Q" q. d! P! H2 Q# S; Q% b

  1. ' x8 k+ C0 U" f7 H7 L
  2. C:\Users\Administrator>npm config ls
    % y7 e% O& X, F9 q, _3 ]% z: `
  3. ; cli configs# L8 F$ x9 G+ l# b- \
  4. user-agent = "npm/2.15.1 node/v4.4.4 win32 x64") M3 U+ C, A: a6 Q9 ^) M  g- j

  5. 8 O  K0 `  j9 S: b0 s; [. v
  6. ; userconfig C:\Users\Administrator\.npmrc
    5 R( |+ A9 I6 a# B3 b
  7. disturl = "https://npm.taobao.org/dist"6 T5 l8 X! X; \: n6 T
  8. proxy = "http://xn--rvg/"
    6 A7 p# ~1 w) q9 k  |
  9. registry = "http://registry.npmjs.org/"
    6 V. ^; ^/ [2 J, V
  10. strict-ssl = false+ m7 g: b9 l4 h( k1 x2 M, g
  11. unsafe-perm = true
    0 X4 Q1 W6 d3 j/ B9 s& `" w# i0 u$ e
  12. 4 k) ~0 y. R3 P! |: Z0 Q0 T
  13. ; builtin config undefined
    / i+ t7 O6 M* b2 S" Q
  14. cache = "C:\\Program Files\\nodejs\\node_global". A- Q7 ^! P" z
  15. prefix = "C:\\Program Files\\nodejs\\node_global"
    5 b% [/ G; ]9 g9 w2 ?& f% ?1 B$ ^
  16. " ]) b3 G" t/ [+ ?' ^7 `0 s
  17. ; node bin location = C:\Program Files\nodejs\node.exe* G% ^% e; r% x( A$ l% d
  18. ; cwd = C:\Users\Administrator
    ) N7 c7 W& k. u7 P+ i. V4 n" b$ Q
  19. ; HOME = C:\Users\Administrator
    - c% e6 \9 J% x3 i# {
  20. ; 'npm config ls -l' to show all defaults.
复制代码

: c# {- z7 F6 a- L$ ^1 ~' X* Q, I" F& a5 R1 E
根据网上的教程,换了N种镜像,问题依旧存在
$ B: Y' i+ g* Q7 D) S- n, M8 G  f; L! B. v
然后终于在网上找到个解决办法:% [/ ]$ f* e; |3 e1 \0 x' Z
: I. L5 _/ B2 j. F- O4 W
  1. 解决办法:
    9 ^7 W% d" B  F
  2. # n# I; d# Q& p, \4 V
  3. 1、执行:
    5 g$ Z. `# I% W6 |/ U

  4. & d2 W  A9 b* Y4 h
  5. npm config get proxy
    4 B0 s4 w) {, N. W
  6. npm config get https-proxy
    ( M6 X# ^7 M% g
  7. 如果返回值不为null,继续执行:& B0 P  ?4 i  k6 j
  8. (这一步很重要,一定要保证两个命令的返回值都为null,话说回来,应该出现这个错误这两个返回值有不为null的)' {) E) Q/ m7 I9 R6 e1 i5 ~1 ~/ F+ o
  9. npm config set proxy null
    2 a/ ]5 t- H% R4 L' e7 \
  10. npm config set https-proxy null: V* G( ^* C& t, s6 Y7 t
  11. 2、执行:. x8 _0 y0 R4 C1 y' m! X7 [* k
  12. npm config set registry http://registry.cnpmjs.org/
复制代码

& d, w0 @9 ]" @
! Q# V, n' K3 e* K3 M  N0 l6 W然后你就可以愉快的安装cnpm了
  U0 _" m/ H7 |; R5 D; z6 J
: I% P+ g. |# X
  1. npm install -g cnpm --registry=https://registry.npm.taobao.org
复制代码

" D- Q1 |, Q% d1 M% Y2 f) H然后你就可以更加愉快的用cnpm安任何东西了
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
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"”的问题
5 H. [: [: w( H( P+ u8 N7 Q; _: O7 B4 |: j( c9 ^: o
1、问题描述
/ x9 A! M8 X; R8 h  x
6 m, G* I. v( o某天在使用yarn安装依赖的时候,突然出现如下错误导致安装依赖终止:
6 G( {: W% ?% p& X) b% S
. G% `8 T2 I6 w( ~/ C9 x+ e! d  N" [
  1. The engine "node" is incompatible with this module. Expected version "^14.18.0 || ^16.14.0 || >=18.0.0". Got "17.9.0"
复制代码

/ y8 U3 ?5 z; h" N
, q* d, c/ Y. b- m& O& R/ R7 F/ i2、解决办法
% c4 j7 t' S) D: I6 g2 x0 U, q使用如下命令忽略错误:
* }7 v; ]% }* R  j# k$ G  H* F# k+ f. W9 h. O9 O
yarn config set ignore-engines true* ?- o% ?7 _. q3 ~$ B8 I
. v- Q. o; X' e! h' y7 c: l
然后再使用yarn进行安装即可
回复

使用道具 举报

348

主题

566

回帖

3710

积分

管理员

积分
3710
QQ
 楼主| 发表于 2023-6-9 03:02:21 | 显示全部楼层
  1. tyarn' w5 A/ x: l1 D5 h, s$ l
  2. yarn install v1.22.19
    ! }" F: u4 ]- }0 `
  3. [1/4] Resolving packages...
    8 C+ J" e! c, _. X0 Q/ B9 w" T- F3 c
  4. [2/4] Fetching packages...
    * \; J' |: N8 G- ]) m$ o5 m6 l' |% q
  5. [3/4] Linking dependencies...
    $ E* q2 R5 V! l7 m0 ~7 v! p* L
  6. warning " > sass-loader@8.0.2" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
    * T% l1 |6 ], l3 a
  7. [4/4] Building fresh packages...1 ?8 }) ^" S- H6 b- }
  8. Done in 19.63s.& F/ B" K5 r8 P7 n# f2 I
  9. PS D:\jsq\formG\form-generator-dev\form-generator-dev> npm run dev, u: P7 q9 m7 V2 T3 Y1 m( }3 {7 B
  10. ( D1 l; V0 `0 [' \: E" ^
  11. > form-generator@0.2.0 dev
    ( H: a0 ~; Z- Z/ o; S
  12. > vue-cli-service serve
    3 g' k. |# n" ^/ x6 j
  13. 0 W5 h* [1 R9 y$ Y3 k  l4 [' A
  14. INFO  Starting development server...4 D- \- K0 d9 {- R
  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::unsupported6 D. J' W3 f4 \$ A1 s+ \
  16.     at new Hash (node:internal/crypto/hash:71:19)1 u4 o- V/ E. C0 ^. `6 Q6 a
  17.     at Object.createHash (node:crypto:133:10)  w0 v& g) L5 w/ a/ g: [% ~
  18.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53), t1 U7 L$ o6 Y9 _
  19.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)2 h1 n5 l0 |! N) R  W
  20.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)/ B. O( b8 w3 i* R6 M6 \
  21.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:5' v4 H% P( ?1 l& r
  22.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:12! ~0 E: ]: N( }, i, Q: K
  23.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3
    7 g$ c9 c" z4 C8 h0 T- O, F7 E! z
  24.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    ' G5 I% H3 r& e" o9 h- O. f
  25.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:221:10)$ P8 g/ m# N0 n
  26.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:236:35 J% M' u; q! O7 B) i; t! K7 F7 P
  27.     at runSyncOrAsync (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:130:11)- N  k, X, R3 c  l
  28.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
    ! P; \9 A; L1 g
  29.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)5 `! g% A6 @- ?9 z! I
  30.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)4 q6 ^% O: {/ S4 u
  31.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9& w3 r5 v8 O2 q
  32. Error: error:0308010C:digital envelope routines::unsupported
    5 c0 G& g" E3 S6 L1 A) o
  33.     at new Hash (node:internal/crypto/hash:71:19)! c7 F4 B7 v# ?
  34.     at Object.createHash (node:crypto:133:10)$ r0 U. b7 x9 L
  35.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53)
    & `$ w) ]( f% v) @; c9 b- o9 L
  36.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)8 A8 S# I/ b) t8 @
  37.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)6 ]# z" s3 ]# q+ M1 e; B3 b
  38.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:5
    0 ^$ K5 X) o0 ^6 n
  39.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:126 s5 I  l$ }7 ^/ U7 H
  40.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3* `, }8 M) k& u/ D) {$ ^: f
  41.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    ! R: J' |' W% m5 n# ^
  42.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:221:10); `3 J  _1 w3 y, ^5 j% J, [  J9 d& g4 h
  43.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:236:3
    ' z9 L* }6 e+ c' v
  44.     at runSyncOrAsync (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:130:11)
    / N$ o9 Y3 P1 V9 [
  45.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:232:2)+ X& ]7 x& K6 U, N
  46.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    5 Z. d# x$ s/ J2 m. c5 l( r4 f$ O
  47.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)+ C; I2 x% Y5 C, x+ l# [/ S$ h
  48.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:93 {, r) k% ?7 D2 U8 C' {6 @1 a
  49. node:internal/crypto/hash:71+ d8 l9 M- Q, ]# Z# J+ F
  50.   this[kHandle] = new _Hash(algorithm, xofLen);
    1 ~0 }" |1 W6 l) q
  51.                   ^/ U- \  S5 Q4 ^$ v3 y

  52. 6 W' q! T) s0 ]# \! s+ T/ s
  53. Error: error:0308010C:digital envelope routines::unsupported$ S% z, j) Q* m0 A1 \
  54.     at new Hash (node:internal/crypto/hash:71:19)
    ) B  [" m! J1 Y) i, u
  55.     at Object.createHash (node:crypto:133:10)
    * L8 ~1 Q9 v  J+ G* j* t; X
  56.     at module.exports (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\util\createHash.js:135:53)
    * y* \- X; ]0 @, z0 c8 U
  57.     at NormalModule._initBuildHash (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:417:16)" b; v0 A+ }) H% L! }  f
  58.     at handleParseError (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:471:10)% \& z, g0 F1 y4 [0 h& C
  59.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:503:53 B) r- b8 I- T
  60.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\webpack\lib\NormalModule.js:358:12
    3 W  B& A2 B& N+ m- t( n# A7 G2 s
  61.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:373:3: o& \7 m. W" E  m. k' t
  62.     at iterateNormalLoaders (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    3 C6 T* o3 R0 P  P9 M3 @7 F% O
  63.     at Array.<anonymous> (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    4 C/ `6 a6 U3 D0 X. }4 d
  64.     at Storage.finished (D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
    2 t* @: p8 Z0 \0 O% J/ V3 n
  65.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:96 ^8 m8 G; _7 {( h
  66.     at D:\jsq\formG\form-generator-dev\form-generator-dev\node_modules\graceful-fs\graceful-fs.js:123:16
    : F" N  e9 e9 D; Q5 ~
  67.     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {, c5 C$ s3 s2 i/ l2 F5 w% U
  68.   opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],$ [9 g' R+ M' _3 Y2 D
  69.   library: 'digital envelope routines',
    : J& k# |! U  j5 @9 g
  70.   reason: 'unsupported',2 ]) u6 B7 q) n+ j
  71.   code: 'ERR_OSSL_EVP_UNSUPPORTED'
    " C$ P& ?: Q, |: |+ r6 g
  72. }
    ; G$ L+ g. ~, {) }

  73. 4 j5 f4 I0 u8 ]) ]. T
  74. Node.js v18.16.0
    % l9 C( |( ?2 _6 \" I
  75. NativeCommandExitException: Program "npm.cmd" ended with non-zero exit code: 1.
复制代码
! t9 g4 t+ ~8 B1 @- S$ V$ o
' ?3 U2 F( P* A$ S, p: b$ ^
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-11 10:28 , Processed in 0.165169 second(s), 2 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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