{
  "version": "https://jsonfeed.org/version/1", 
  "title": "\u524d\u7aef\u5f00\u53d1", 
  "description": "", 
  "home_page_url": "https://www.v2ex.com/go/fe", 
  "feed_url": "https://www.v2ex.com/feed/fe.json", 
  "icon": "https://cdn.v2ex.com/navatar/df7f/28ac/791_large.png?m=1735634915", 
  "favicon": "https://cdn.v2ex.com/navatar/df7f/28ac/791_normal.png?m=1735634915", 
  "items": [
    {
      "author": {
        "url": "https://www.v2ex.com/member/autojunjie", 
        "name": "autojunjie", 
        "avatar": "https://cdn.v2ex.com/avatar/f99f/115d/789676_large.png?m=1774930080"
      }, 
      "url": "https://www.v2ex.com/t/1204737", 
      "date_modified": "2026-04-09T15:38:30+00:00", 
      "content_html": "<p>\u505a\u4e86\u4e2a\u5b9e\u9a8c\u6027\u7684\u9879\u76ee\uff0c\u662f\u4e00\u4e2a\u4eba\u548c Agent \u534f\u4f5c\u7684\u5e73\u53f0\uff0c\u652f\u6301\u5b9e\u65f6\u7684\u901a\u8fc7 UI \u548c\u4f60\u7684 Claude Code/OpenClaw \u8fdb\u884c\u4ea4\u4e92\uff0c\u652f\u6301 @<a href=\"/member/linear\">linear</a> \u63d0\u51fa\u7684 AIG \u91cc\u9762\u7684\u72b6\u6001\u53ef\u89c6\u5316\uff0cAgent \u7684\u64cd\u4f5c\u548c\u8fdb\u5ea6\u90fd\u80fd\u5728 UI \u4e0a\u770b\u7684\u4e00\u6e05\u4e8c\u695a\uff0c\u548c Agent \u901a\u8fc7 Skill/Plugin \u7684\u65b9\u5f0f\u8fdb\u884c\u5bf9\u63a5\uff0c\u4e0d\u53d7 A\\\u7684 drama \u5f71\u54cd </p>\n<p><br/>linear AIG\uff1a <a href=\"https://linear.app/developers/aig\" rel=\"nofollow\">https://linear.app/developers/aig</a>\n<br/>Demo \u89c6\u9891\uff1a [\u6211\u628a\u6211\u7684\u9879\u76ee\u5f00\u6e90\u4e86\uff1aChorus - \u5e26\u5b9e\u65f6\u53cd\u9988\u7684 Agent \u534f\u4f5c\u5e73\u53f0-\u54d4\u54e9\u54d4\u54e9]  <a href=\"https://b23.tv/O4OMcx9\" rel=\"nofollow\">https://b23.tv/O4OMcx9</a>\n<br/>Github\uff1a <a href=\"https://github.com/Chorus-AIDLC/Chorus\" rel=\"nofollow\">https://github.com/Chorus-AIDLC/Chorus</a>\n<br/>Blog\uff1a <a href=\"https://chorus-ai.dev/zh/blog/chorus-v0.6.0-release/\" rel=\"nofollow\">https://chorus-ai.dev/zh/blog/chorus-v0.6.0-release/</a></p>\n", 
      "date_published": "2026-04-09T15:33:23+00:00", 
      "title": "\u63a2\u7d22\u4e86\u4e00\u4e0b Agent Native \u7684 UI \u5e94\u8be5\u600e\u4e48\u505a\uff0c\u9644\u5e26\u9879\u76ee\u94fe\u63a5", 
      "id": "https://www.v2ex.com/t/1204737"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/zhea55", 
        "name": "zhea55", 
        "avatar": "https://cdn.v2ex.com/avatar/e099/2791/70313_large.png?m=1496224394"
      }, 
      "url": "https://www.v2ex.com/t/1202961", 
      "title": "\u5f00\u53d1\u6296\u97f3 pc \u7f51\u9875\u7684 100%\u90fd\u662f\u4e9b\u8349\u5305\u3002", 
      "id": "https://www.v2ex.com/t/1202961", 
      "date_published": "2026-04-01T16:39:30+00:00", 
      "content_html": "<ol>\n<li>\u65e0\u8bba\u7528\u6237\u9009\u7684\u89c6\u9891\u6e05\u6670\u5ea6\u662f\u6d41\u7545\u3001\u8fd8\u662f\u6781\u901f\uff0c\u5b83\u90fd\u7ed9\u4f60\u7528 720p \uff0c1080p \uff0c\u9ad8\u6e05\u89c6\u9891\u3002\u5b83\u7684\u6570\u636e\u91cc\u9762\u662f\u6709 480p \uff0c540p \u5730\u5740\u7684\u3002\u6211\u6000\u7591\u4ed6\u4eec\u662f\u6d41\u91cf\u8fd0\u8425\u5546\u5408\u4f5c\u4f19\u4f34\u3002</li>\n<li>\u53ea\u8981\u8fdb\u5165\u89c6\u9891\u9875\u9762\u505c\u7559 1s \uff0c\u5b83\u5c31\u7ed9\u4f60\u628a\u5f53\u524d\u89c6\u9891\u5168\u90e8\u7f13\u51b2\u5b8c\uff0c\u53d1\u51fa\u7684\u8bf7\u6c42\u5934 range\uff1a0-\uff0c\u4e0d\u8bbe\u4e0a\u9650\u3002\uff08\u90a3\u79cd\u534a\u5c0f\u65f6\u4ee5\u4e0a\u8d85\u957f\u7684\u9664\u5916\uff09\u5982\u679c\u4f60\u8fde\u7eed\u5212\u8d70 10 \u4e2a\u89c6\u9891\uff0c\u90a3\u4f60\u5df2\u7ecf\u6d88\u8017\u4e86 50mb \u6d41\u91cf\u3002</li>\n<li>\u6bcf\u4e2a\u89c6\u9891\u4e00\u4e2a video \u6807\u7b7e\u3002\u4f60\u5f80\u4e0a\u6ed1\u52a8\uff0c\u5f53\u524d\u89c6\u9891\u6b63\u5728\u64ad\u653e\uff0c\u4f60\u5212\u8d70\u7684\u90a3\u4e2a\u8fde display\uff1anone \u90fd\u6ca1\u6709\uff0c\u4ecd\u7136\u5728\u540e\u53f0\u6d88\u8017\u4f60\u7684\u7535\u8111\u8d44\u6e90\u3002\u8fd9 tm \u54ea\u4e2a\u50bb\u903c\u505a\u7684\uff0c\u7528\u7684\u662f react \uff0c\u5199\u7684\u5c4e\u4e00\u6837\u7684\u4ee3\u7801\uff0c\u8fd8\u6ca1\u6709\u522b\u4eba jQuery \u7f51\u7ad9\u901f\u5ea6\u5feb\u3002\u8fd9 tm \u5c31\u7528\u4e00\u4e2a video \u6807\u7b7e\uff0c\u4f60\u5207\u6362\u89c6\u9891\uff0c\u53ea\u9700\u8981\u628a src \u6539\u4e00\u4e0b\u3002\u4f60\u64ad\u653e\u89c6\u9891\u7528\u7684 blob url \uff0c\u4f60\u53ea\u8981\u4e00\u76f4\u6301\u6709 blob \u5f15\u7528\uff0c\u89c6\u9891\u7f13\u5b58\u6570\u636e\u5c31\u5b58\u5728\uff0c\u6765\u56de\u6ed1\u52a8\u4e5f\u4e0d\u4f1a\u6d88\u8017\u6d41\u91cf\u3002\u6bcf\u6b21\u6253\u5f00\u8fd9\u4e2a b \u6296\u97f3\u90fd\u8ddf\u5f00\u4e86\u6316\u77ff\u811a\u672c\u4e00\u6837\uff0c\u98ce\u6247\u4e0d\u505c\u8f6c\u3002</li>\n<li>web api \u672c\u6765\u662f\u63d0\u4f9b\u7ed9\u5f00\u53d1\u4eba\u5458\u4f7f\u7528\u7684\u3002\u6211\u611f\u89c9\u9488\u5bf9\u56fd\u5185\u5e94\u8be5\u5c3d\u91cf\u9650\u5236 api \u7684\u529f\u80fd\u3002\u6bd4\u5982\u5f88\u591a\u50bb\u903c json \u8f6c\u6362\u51e0 MB \u7684\u6570\u636e\uff0ceval \u8d85\u5927\u5b57\u7b26\u4e32\uff0ccanvas \uff0cservice worker \uff0c\u4ec0\u4e48\u529f\u80fd\u90fd\u7ed9\u4f60\u4e0a\u3002</li>\n</ol>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/mizuhashi", 
        "name": "mizuhashi", 
        "avatar": "https://cdn.v2ex.com/avatar/8854/0e78/157347_large.png?m=1774621158"
      }, 
      "url": "https://www.v2ex.com/t/1201734", 
      "date_modified": "2026-03-27T14:25:31+00:00", 
      "content_html": "<p><a href=\"https://dev.to/playfulprogramming/two-react-design-choices-developers-dont-like-but-cant-avoid-d6g\" rel=\"nofollow\">https://dev.to/playfulprogramming/two-react-design-choices-developers-dont-like-but-cant-avoid-d6g</a></p>\n<p>\u5927\u81f4\u4e0a\u662f\uff0creact \u95dc\u65bc\u63a8\u5f8c commit \u7684\u505a\u6cd5\u662f\u6709\u9053\u7406\u7684\uff0csignal based \u7684\u65b9\u6848\u4e00\u822c\u7576\u767c\u751f\u72c0\u614b\u66f4\u65b0\u7684\u6642\u5019\u662f\u76f4\u63a5 commit \u8b8a\u5316\uff0c\u4f46\u5728 solid 2.0 \u4e4b\u5f8c\u9019\u500b\u4e5f\u6703\u6539\u8b8a\u3002</p>\n", 
      "date_published": "2026-03-27T14:22:29+00:00", 
      "title": "Solid \u4f5c\u8005\u91cd\u65b0\u5be9\u8996 React \u505a\u5c0d\u4e86\u7684\u5169\u4ef6\u4e8b\uff0c\u4ee5\u53ca\u5c07\u6703\u5728 Solid 2.0 \u63a1\u7528", 
      "id": "https://www.v2ex.com/t/1201734"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/fgt1t5y", 
        "name": "fgt1t5y", 
        "avatar": "https://cdn.v2ex.com/gravatar/300d732f54b0d7dcbd399619478b889a?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1198308", 
      "title": "\u6709\u5927\u4f6c\u8ba4\u8bc6\u8fd9\u662f\u54ea\u4e2a\u56fe\u6807\u5e93\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/1198308", 
      "date_published": "2026-03-14T13:31:11+00:00", 
      "content_html": "<p>\u4f7f\u7528 InnoSetup \u65f6\u770b\u5230\u7684\uff0c\u611f\u89c9\u8fd9\u79cd\u6df1\u8272\u63cf\u8fb9+\u6d45\u8272\u586b\u5145\u98ce\u683c\u7684\u56fe\u6807\u633a\u597d\u770b\u7684\uff0c\u8bf7\u95ee\u8fd9\u662f\u54ea\u4e00\u5957\u56fe\u6807\u5e93\u5462\uff1f</p>\n<p><img alt=\"Image\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"//i.imgur.com/k6S0Cnpl.png\"/></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/MyEevy", 
        "name": "MyEevy", 
        "avatar": "https://cdn.v2ex.com/avatar/50ed/e00d/262627_large.png?m=1764923605"
      }, 
      "url": "https://www.v2ex.com/t/1193752", 
      "title": "\u8bf7\u6559\u5173\u4e8e\u4e0d\u53d1\u7248\u52a8\u6001\u66f4\u65b0 APP \u7684 LOGO \u65b9\u6848", 
      "id": "https://www.v2ex.com/t/1193752", 
      "date_published": "2026-02-24T07:03:26+00:00", 
      "content_html": "\u6211\u4eec\u76ee\u524d\u7684\u505a\u6cd5\u662f\u9884\u57cb\uff0c\u63d0\u524d\u51e0\u4e2a\u7248\u672c\u5b9a\u4e49\u597d\u5404\u7c7b LOGO \uff0c\u540e\u53f0\u63a7\u5236\u5f00\u5173\u3002\u8bf7\u95ee\u8fd8\u6709\u5176\u4ed6\u65b9\u6848\u505a\u52a8\u6001\u66f4\u65b0\u561b\uff0c\u8001\u677f\u53cd\u590d\u8bf4\u8ba9\u6211\u4eec\u4e86\u89e3\u5176\u4ed6\u66f4\u4fbf\u6377\u65b9\u6848\uff0c\u4f46\u662f\u67e5\u8d44\u6599\u6211\u5e76\u6ca1\u6709\u627e\u5230\u5176\u4ed6\u66f4\u4f18\u89e3\uff0c\u8001\u677f\u627e\u6211\u4eec\u8bf4\u6211\u4eec\u80fd\u529b\u95ee\u9898\u3002\u3002\u3002\u3002\u7279\u6765\u8bf7\u6559\u3002APP \u4e3a\u539f\u751f\u5f00\u53d1"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/hazellin549", 
        "name": "hazellin549", 
        "avatar": "https://cdn.v2ex.com/gravatar/5147ec8bda9ad8328c69a9ca8fa55eb1?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1193338", 
      "title": "Next.js \u591a\u8bed\u8a00\u8def\u7531\u6027\u80fd\u4f18\u5316\uff1a\u4ece 5.8s LCP \u5230\u6781\u81f4\u4f53\u9a8c", 
      "id": "https://www.v2ex.com/t/1193338", 
      "date_published": "2026-02-20T15:00:59+00:00", 
      "content_html": "<blockquote>\n<p>\u4e3a\u4ec0\u4e48\u4f60\u7684\u82f1\u6587\u7248\u6bd4\u4e2d\u6587\u7248\u6162 3 \u500d\uff1f</p>\n</blockquote>\n<hr/>\n<h2>01 \u4e00\u4e2a\u8be1\u5f02\u7684\u6027\u80fd\u95ee\u9898</h2>\n<p>\u4e0a\u5468\uff0c\u6211\u5728\u68c0\u67e5\u7f51\u7ad9\u7684\u6027\u80fd\u62a5\u544a\u65f6\uff0c\u53d1\u73b0\u4e86\u4e00\u4e2a\u8be1\u5f02\u7684\u73b0\u8c61\uff1a</p>\n<table>\n<thead>\n<tr>\n<th>\u8bed\u8a00\u7248\u672c</th>\n<th>LCP</th>\n<th>CLS</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\u4e2d\u6587 (\u9ed8\u8ba4)</td>\n<td>2.3s \u2705</td>\n<td>0.06 \u2705</td>\n</tr>\n<tr>\n<td>\u82f1\u8bed /en/</td>\n<td>5.8s \u274c</td>\n<td>0.68 \u274c</td>\n</tr>\n</tbody></table><p><strong>\u540c\u4e00\u5957\u4ee3\u7801\uff0c\u540c\u4e00\u4e2a\u9875\u9762\uff0c\u4e3a\u4ec0\u4e48\u82f1\u6587\u7248\u6bd4\u9ed8\u8ba4\u8bed\u8a00\u6162\u4e86\u6574\u6574 2.5 \u500d\uff1f</strong></p>\n<p>\u8fd9\u7bc7\u6587\u7ae0\u8bb0\u5f55\u6211\u7684\u6392\u67e5\u8fc7\u7a0b\u548c\u6700\u7ec8\u89e3\u51b3\u65b9\u6848\u3002</p>\n<hr/>\n<h2>02 \u5148\u641e\u6e05\u695a LCP \u662f\u4ec0\u4e48</h2>\n<p><strong>LCP (Largest Contentful Paint)</strong> \u662f Core Web Vitals \u7684\u6838\u5fc3\u6307\u6807\u4e4b\u4e00\u3002</p>\n<p>\u7b80\u5355\u8bf4\uff0c\u5b83\u6d4b\u91cf\u7684\u662f\uff1a<strong>\u9875\u9762\u4e3b\u8981\u5185\u5bb9\u51fa\u73b0\u7684\u65f6\u95f4</strong>\u3002</p>\n<p>Google \u7684\u6807\u51c6\u662f\uff1a</p>\n<ul>\n<li>\u2705 <strong>&lt; 2.5s</strong> \u2014 \u826f\u597d</li>\n<li>\u26a0\ufe0f <strong>2.5s - 4s</strong> \u2014 \u9700\u8981\u6539\u8fdb</li>\n<li>\u274c <strong>&gt; 4s</strong> \u2014 \u8f83\u5dee</li>\n</ul>\n<p>\u6211\u7684\u82f1\u6587\u7248 5.8s \uff0c\u59a5\u59a5\u7684\u300c\u7ea2\u724c\u8b66\u544a\u300d\u3002</p>\n<hr/>\n<h2>03 \u7b2c\u4e00\u4e2a\u5acc\u7591\u4eba\uff1a\u7f13\u5b58\u7b56\u7565</h2>\n<p>\u5728 Next.js \u7684\u591a\u8bed\u8a00\u8def\u7531\u4e2d\uff0c\u9ed8\u8ba4\u8bed\u8a00\u548c\u975e\u9ed8\u8ba4\u8bed\u8a00\u7684\u5904\u7406\u903b\u8f91\u662f\u4e0d\u540c\u7684\u3002</p>\n<pre><code>\u9ed8\u8ba4\u8bed\u8a00: example.com/product\n\u975e\u9ed8\u8ba4\u8bed\u8a00: example.com/en/product\n</code></pre>\n<p>\u6211\u68c0\u67e5\u4e86 CDN \u7f13\u5b58\u547d\u4e2d\u7387\uff1a</p>\n<table>\n<thead>\n<tr>\n<th>\u8def\u7531</th>\n<th>\u7f13\u5b58\u547d\u4e2d\u7387</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>/product</td>\n<td>89% \u2705</td>\n</tr>\n<tr>\n<td>/en/product</td>\n<td>31% \u274c</td>\n</tr>\n</tbody></table><p><strong>\u95ee\u9898\u51fa\u73b0\u4e86\uff1a\u975e\u9ed8\u8ba4\u8bed\u8a00\u7684\u7f13\u5b58\u547d\u4e2d\u7387\u4f4e\u5f97\u53ef\u601c\u3002</strong></p>\n<h3>\u539f\u56e0\u5206\u6790</h3>\n<p>Next.js \u9ed8\u8ba4\u751f\u6210\u7684 <code>Cache-Control</code> \u5934\u5bf9\u4e8e\u52a8\u6001\u8def\u7531\u662f\u8fd9\u6837\u7684\uff1a</p>\n<pre><code>Cache-Control: private, no-cache, no-store, max-age=0, must-revalidate\n</code></pre>\n<p>\u800c\u6211\u7684\u591a\u8bed\u8a00\u8def\u7531 <code>/[locale]/...</code> \u88ab\u8bc6\u522b\u4e3a\u300c\u52a8\u6001\u8def\u7531\u300d\uff0c\u5bfc\u81f4 CDN \u51e0\u4e4e\u4e0d\u7f13\u5b58\u3002</p>\n<h3>\u89e3\u51b3\u65b9\u6848</h3>\n<p>\u5728 <code>next.config.js</code> \u4e2d\u663e\u5f0f\u914d\u7f6e\u7f13\u5b58\u7b56\u7565\uff1a</p>\n<pre><code class=\"language-javascript\">async headers() {\n  return [\n    {\n      source: '/:locale(en|es|fr)/:path*',\n      headers: [\n        {\n          key: 'Cache-Control',\n          value: 'public, s-maxage=3600, stale-while-revalidate=86400',\n        },\n      ],\n    },\n  ];\n}\n</code></pre>\n<p><strong>\u6548\u679c</strong>\uff1a\u7f13\u5b58\u547d\u4e2d\u7387\u4ece 31% \u63d0\u5347\u5230 **85%**\u3002</p>\n<hr/>\n<h2>04 \u7b2c\u4e8c\u4e2a\u5acc\u7591\u4eba\uff1a\u5173\u952e\u8d44\u6e90\u9884\u52a0\u8f7d</h2>\n<p>\u4f18\u5316\u7f13\u5b58\u540e\uff0cLCP \u4ece 5.8s \u964d\u5230\u4e86 3.9s \uff0c\u4f46\u8fd8\u662f\u4e0d\u8fbe\u6807\u3002</p>\n<p>Lighthouse \u62a5\u544a\u7ed9\u4e86\u4e00\u4e2a\u63d0\u793a\uff1a</p>\n<pre><code>\u26a0\ufe0f Preload key requests\nFonts and critical CSS are not being preloaded\n</code></pre>\n<p>\u6211\u68c0\u67e5\u4e86\u9875\u9762\u7684\u8d44\u6e90\u52a0\u8f7d\u987a\u5e8f\uff1a</p>\n<pre><code>1. HTML \u6587\u6863\n2. \u7b49\u5f85\u89e3\u6790...\n3. \u53d1\u73b0 CSS \u5f15\u7528\n4. \u4e0b\u8f7d CSS\n5. \u53d1\u73b0\u5b57\u4f53\u5f15\u7528\n6. \u4e0b\u8f7d\u5b57\u4f53\n7. \u6e32\u67d3\u6587\u5b57 \u2190 LCP \u53d1\u751f\u5728\u8fd9\u91cc\n</code></pre>\n<p><strong>\u95ee\u9898\u662f\uff1a\u5b57\u4f53\u8981\u7b49\u5230 CSS \u52a0\u8f7d\u5b8c\u624d\u5f00\u59cb\u4e0b\u8f7d\uff0c\u5f62\u6210\u4e86\u7011\u5e03\u6d41\u3002</strong></p>\n<h3>\u89e3\u51b3\u65b9\u6848</h3>\n<p>\u5728 <code>&lt;head&gt;</code> \u4e2d\u6dfb\u52a0\u9884\u52a0\u8f7d\u6807\u7b7e\uff1a</p>\n<pre><code class=\"language-jsx\">&lt;Head&gt;\n  {/* \u9884\u52a0\u8f7d\u5173\u952e\u5b57\u4f53 */}\n  &lt;link\n    rel=\"preload\"\n    href=\"/fonts/inter-variable.woff2\"\n    as=\"font\"\n    type=\"font/woff2\"\n    crossOrigin=\"anonymous\"\n  /&gt;\n  \n  {/* \u9884\u52a0\u8f7d\u5173\u952e CSS */}\n  &lt;link\n    rel=\"preload\"\n    href=\"/_next/static/css/app.css\"\n    as=\"style\"\n  /&gt;\n&lt;/Head&gt;\n</code></pre>\n<p><strong>\u6548\u679c</strong>\uff1aLCP \u4ece 3.9s \u964d\u5230 <strong>2.7s</strong>\u3002</p>\n<hr/>\n<h2>05 \u7b2c\u4e09\u4e2a\u5acc\u7591\u4eba\uff1a\u56fe\u7247\u52a0\u8f7d</h2>\n<p>\u8fd8\u5dee 0.2s \u624d\u80fd\u8fbe\u5230 2.5s \u7684\u300c\u826f\u597d\u300d\u6807\u51c6\u3002</p>\n<p>Lighthouse \u53c8\u7ed9\u4e86\u63d0\u793a\uff1a</p>\n<pre><code>\u26a0\ufe0f Largest Contentful Paint element\n&lt;img src=\"/hero-banner.png\" ...&gt;\n</code></pre>\n<p>\u539f\u6765 LCP \u5143\u7d20\u662f\u9996\u5c4f\u7684\u5927\u56fe\u3002</p>\n<h3>\u95ee\u9898</h3>\n<p>\u56fe\u7247\u4f7f\u7528\u4e86 Next.js \u7684 <code>&lt;Image&gt;</code> \u7ec4\u4ef6\uff0c\u9ed8\u8ba4\u662f\u61d2\u52a0\u8f7d\u7684\uff1a</p>\n<pre><code class=\"language-jsx\">&lt;Image src=\"/hero-banner.png\" ... /&gt;\n// \u9ed8\u8ba4 loading=\"lazy\"\n</code></pre>\n<p>\u4f46\u5bf9\u4e8e\u9996\u5c4f\u56fe\u7247\uff0c\u61d2\u52a0\u8f7d\u53cd\u800c\u62d6\u6162\u4e86\u663e\u793a\u901f\u5ea6\u3002</p>\n<h3>\u89e3\u51b3\u65b9\u6848</h3>\n<p>\u5bf9 LCP \u5143\u7d20\u7981\u7528\u61d2\u52a0\u8f7d\uff0c\u5e76\u6dfb\u52a0 <code>priority</code> \u5c5e\u6027\uff1a</p>\n<pre><code class=\"language-jsx\">&lt;Image\n  src=\"/hero-banner.png\"\n  priority  // \u5173\u952e\uff01\n  loading=\"eager\"\n  ...\n/&gt;\n</code></pre>\n<p><strong>\u6548\u679c</strong>\uff1aLCP \u4ece 2.7s \u964d\u5230 <strong>2.2s</strong> \u2705</p>\n<hr/>\n<h2>06 CLS \u95ee\u9898\uff1a\u9875\u9762\u4e3a\u4ec0\u4e48\u5728\u300c\u6296\u52a8\u300d\uff1f</h2>\n<p>\u89e3\u51b3\u5b8c LCP \uff0c\u518d\u770b CLS \u3002</p>\n<p><strong>CLS (Cumulative Layout Shift)</strong> \u6d4b\u91cf\u7684\u662f\uff1a<strong>\u9875\u9762\u5143\u7d20\u7684\u610f\u5916\u4f4d\u79fb</strong>\u3002</p>\n<p>\u6211\u7684\u82f1\u6587\u7248 CLS \u662f 0.68 \uff0c\u800c\u6807\u51c6\u662f &lt; 0.1 \u3002</p>\n<p>\u6253\u5f00\u9875\u9762\u6162\u52a8\u4f5c\u56de\u653e\uff0c\u53d1\u73b0\u4e86\u4e24\u4e2a\u95ee\u9898\uff1a</p>\n<h3>\u95ee\u9898 1\uff1a\u5b57\u4f53\u52a0\u8f7d\u5bfc\u81f4\u7684\u300c\u95ea\u70c1\u300d(FOUT)</h3>\n<p>\u9875\u9762\u5148\u7528\u7cfb\u7edf\u5b57\u4f53\u6e32\u67d3\uff0c\u5b57\u4f53\u52a0\u8f7d\u5b8c\u540e\u300c\u95ea\u300d\u4e00\u4e0b\u53d8\u6210\u81ea\u5b9a\u4e49\u5b57\u4f53\u3002</p>\n<p>\u7531\u4e8e\u4e24\u79cd\u5b57\u4f53\u7684 metrics \u4e0d\u540c\uff0c\u6587\u5b57\u4f4d\u7f6e\u53d1\u751f\u504f\u79fb\u3002</p>\n<p><strong>\u89e3\u51b3\u65b9\u6848</strong>\uff1a\u4f7f\u7528 <code>font-display: optional</code></p>\n<pre><code class=\"language-css\">@font-face {\n  font-family: 'Inter';\n  src: url('/fonts/inter-variable.woff2') format('woff2');\n  font-display: optional; /* \u5982\u679c\u5b57\u4f53\u6ca1\u53ca\u65f6\u52a0\u8f7d\uff0c\u5c31\u4e0d\u6362\u4e86 */\n}\n</code></pre>\n<h3>\u95ee\u9898 2\uff1a\u56fe\u7247\u6ca1\u6709\u6307\u5b9a\u5c3a\u5bf8</h3>\n<pre><code class=\"language-jsx\">// \u274c \u9519\u8bef\u5199\u6cd5\n&lt;img src=\"/card.png\" /&gt;\n\n// \u2705 \u6b63\u786e\u5199\u6cd5\n&lt;img src=\"/card.png\" width={300} height={400} /&gt;\n</code></pre>\n<p>Next.js \u7684 <code>&lt;Image&gt;</code> \u7ec4\u4ef6\u4f1a\u81ea\u52a8\u5904\u7406\u8fd9\u4e2a\u95ee\u9898\uff0c\u4f46\u6211\u6709\u51e0\u4e2a\u5730\u65b9\u7528\u4e86\u539f\u751f <code>&lt;img&gt;</code>\u3002</p>\n<p><strong>\u6548\u679c</strong>\uff1aCLS \u4ece 0.68 \u964d\u5230 <strong>0.04</strong> \u2705</p>\n<hr/>\n<h2>07 \u4f18\u5316\u524d\u540e\u5bf9\u6bd4</h2>\n<table>\n<thead>\n<tr>\n<th>\u6307\u6807</th>\n<th>\u4f18\u5316\u524d</th>\n<th>\u4f18\u5316\u540e</th>\n<th>\u6539\u5584</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>LCP</td>\n<td>5.8s \u274c</td>\n<td>2.2s \u2705</td>\n<td>-62%</td>\n</tr>\n<tr>\n<td>CLS</td>\n<td>0.68 \u274c</td>\n<td>0.04 \u2705</td>\n<td>-94%</td>\n</tr>\n<tr>\n<td>\u7f13\u5b58\u547d\u4e2d\u7387</td>\n<td>31%</td>\n<td>85%</td>\n<td>+174%</td>\n</tr>\n<tr>\n<td>Lighthouse</td>\n<td>52</td>\n<td>91</td>\n<td>+75%</td>\n</tr>\n</tbody></table><hr/>\n<h2>08 \u6838\u5fc3\u7ecf\u9a8c\u603b\u7ed3</h2>\n<p>\u591a\u8bed\u8a00\u8def\u7531\u7684\u6027\u80fd\u4f18\u5316\uff0c\u6838\u5fc3\u8981\u70b9\uff1a</p>\n<h3>\ud83c\udfaf \u7f13\u5b58\u7b56\u7565</h3>\n<p>\u975e\u9ed8\u8ba4\u8bed\u8a00\u8def\u7531\u5bb9\u6613\u88ab\u5f53\u4f5c\u300c\u52a8\u6001\u9875\u9762\u300d\u800c\u8df3\u8fc7\u7f13\u5b58\u3002<strong>\u663e\u5f0f\u914d\u7f6e Cache-Control</strong>\u3002</p>\n<h3>\ud83c\udfaf \u9884\u52a0\u8f7d\u5173\u952e\u8d44\u6e90</h3>\n<p>\u5b57\u4f53\u548c\u5173\u952e CSS \u5f62\u6210\u7011\u5e03\u6d41\u662f LCP \u7684\u5e38\u89c1\u6740\u624b\u3002<strong>\u7528 <code>&lt;link rel=\"preload\"&gt;</code> \u6253\u7834\u7011\u5e03\u3002</strong></p>\n<h3>\ud83c\udfaf LCP \u5143\u7d20\u4f18\u5148\u52a0\u8f7d</h3>\n<p>\u9996\u5c4f\u56fe\u7247\u4e0d\u8981\u61d2\u52a0\u8f7d\u3002<strong>\u7528 <code>priority</code> \u5c5e\u6027\u544a\u8bc9 Next.js \u8fd9\u662f\u5173\u952e\u8d44\u6e90\u3002</strong></p>\n<h3>\ud83c\udfaf \u9632\u6b62\u5e03\u5c40\u504f\u79fb</h3>\n<ul>\n<li>\u56fe\u7247\u5fc5\u987b\u6307\u5b9a\u5c3a\u5bf8</li>\n<li>\u5b57\u4f53\u4f7f\u7528 <code>font-display: optional</code> \u6216 <code>swap</code> + \u9884\u52a0\u8f7d</li>\n<li>\u907f\u514d\u52a8\u6001\u63d2\u5165\u5185\u5bb9\u5230\u9996\u5c4f</li>\n</ul>\n<hr/>\n<h2>09 \u4e00\u4e2a\u5bb9\u6613\u5ffd\u7565\u7684\u7ec6\u8282</h2>\n<p>\u6700\u540e\u5206\u4eab\u4e00\u4e2a\u5bb9\u6613\u5ffd\u7565\u7684\u70b9\uff1a</p>\n<p><strong>\u4e0d\u540c\u8bed\u8a00\u7248\u672c\u7684\u5b57\u4f53 metrics \u53ef\u80fd\u4e0d\u540c\u3002</strong></p>\n<p>\u6bd4\u5982\u4e2d\u6587\u5b57\u4f53\u901a\u5e38\u6bd4\u82f1\u6587\u5b57\u4f53\u66f4\u9ad8\uff0c\u5982\u679c\u4f60\u7528\u540c\u4e00\u5957 CSS \uff0c<code>line-height</code> \u53ef\u80fd\u5bfc\u81f4\u4e0d\u540c\u8bed\u8a00\u7684\u5e03\u5c40\u9ad8\u5ea6\u4e0d\u4e00\u81f4\u3002</p>\n<p>\u6211\u7684\u505a\u6cd5\u662f\u4e3a\u6bcf\u79cd\u8bed\u8a00\u5b9a\u4e49 <code>body</code> \u7684 <code>font-family</code> \u540e\u5907\u6808\uff1a</p>\n<pre><code class=\"language-css\">/* \u82f1\u8bed/\u897f\u73ed\u7259\u8bed */\nbody[lang=\"en\"], body[lang=\"es\"] {\n  font-family: 'Inter', system-ui, sans-serif;\n}\n\n/* \u4e2d\u6587 */\nbody[lang=\"zh\"] {\n  font-family: 'Inter', 'PingFang SC', 'Microsoft YaHei', sans-serif;\n}\n</code></pre>\n<hr/>\n<h2>10 \u5199\u5728\u6700\u540e</h2>\n<p>\u6027\u80fd\u4f18\u5316\u662f\u4e00\u4e2a\u300c\u6324\u7259\u818f\u300d\u7684\u8fc7\u7a0b\uff1a</p>\n<ul>\n<li>\u7b2c\u4e00\u8f6e\u4f18\u5316\uff08\u7f13\u5b58\uff09\uff1a5.8s \u2192 3.9s</li>\n<li>\u7b2c\u4e8c\u8f6e\u4f18\u5316\uff08\u9884\u52a0\u8f7d\uff09\uff1a3.9s \u2192 2.7s  </li>\n<li>\u7b2c\u4e09\u8f6e\u4f18\u5316\uff08\u56fe\u7247\uff09\uff1a2.7s \u2192 2.2s</li>\n</ul>\n<p><strong>\u6bcf\u4e00\u8f6e\u770b\u8d77\u6765\u6539\u52a8\u4e0d\u5927\uff0c\u4f46\u7d2f\u79ef\u4e0b\u6765\u6548\u679c\u60ca\u4eba\u3002</strong></p>\n<p>\u5982\u679c\u4f60\u7684\u591a\u8bed\u8a00\u7f51\u7ad9\u4e5f\u6709\u6027\u80fd\u95ee\u9898\uff0c\u4e0d\u59a8\u6309\u8fd9\u4e2a\u987a\u5e8f\u6392\u67e5\uff1a</p>\n<ol>\n<li>\u7f13\u5b58\u662f\u5426\u751f\u6548\uff1f</li>\n<li>\u5173\u952e\u8d44\u6e90\u662f\u5426\u9884\u52a0\u8f7d\uff1f</li>\n<li>LCP \u5143\u7d20\u662f\u5426\u4f18\u5148\u52a0\u8f7d\uff1f</li>\n<li>\u6709\u6ca1\u6709\u5e03\u5c40\u504f\u79fb\uff1f</li>\n</ol>\n<p>\u5e0c\u671b\u8fd9\u7bc7\u6587\u7ae0\u5bf9\u4f60\u6709\u5e2e\u52a9\uff01</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Kholin", 
        "name": "Kholin", 
        "avatar": "https://cdn.v2ex.com/avatar/b993/4a91/245532_large.png?m=1774523493"
      }, 
      "url": "https://www.v2ex.com/t/1192953", 
      "title": "\u5173\u4e8e\u5982\u4f55\u6b63\u786e\u7684\u5728 React \u6216 Vue \u4e2d\u4f7f\u7528\u94fe\u63a5", 
      "id": "https://www.v2ex.com/t/1192953", 
      "date_published": "2026-02-15T10:21:47+00:00", 
      "content_html": "<p>\u6709\u611f\u4e8e\u73b0\u5728\u5f88\u591a\u684c\u9762\u7aef\u7f51\u7ad9\u90fd\u4e0d\u592a\u5728\u610f\u201c\u94fe\u63a5\u201d\u8fd9\u4e2a\u6982\u5ff5\u4e86\uff0c\u5168\u90e8\u90fd\u662f\u7528\u7eaf JavaScript \u6765\u6253\u5f00\u9875\u9762\uff0c\u4e00\u65e6\u7981\u7528 JS \u51e0\u4e4e\u5c31\u65e0\u6cd5\u4f7f\u7528\uff0c\u4f53\u9a8c\u4e0d\u662f\u5f88\u597d\uff0c\u4e8e\u662f\u5199\u4e86\u4e00\u7bc7\u7b80\u77ed\u7684\u535a\u5ba2\uff0c\u5168\u6587\uff1a <a href=\"https://blog.k2dong.com/use-link-in-react-vue/\" rel=\"nofollow\">https://blog.k2dong.com/use-link-in-react-vue/</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/freemoon", 
        "name": "freemoon", 
        "avatar": "https://cdn.v2ex.com/avatar/0a94/3887/328850_large.png?m=1773899137"
      }, 
      "url": "https://www.v2ex.com/t/1189693", 
      "date_modified": "2026-01-31T01:26:04+00:00", 
      "content_html": "<p>RT \uff0c\u6700\u8fd1\u7814\u7a76\u9006\u5411\uff0c\u53d1\u73b0\u4e00\u4e9b web im app \u662f\u91c7\u7528\u8fd9\u79cd\u53cd\u9006\u5411 web \u67b6\u6784\uff0c\u5934\u4e00\u6b21\u9047\u5230\uff0c\u6709\u5927\u4f6c\u6307\u70b9\u4e00\u4e8c\u5417\u3002</p>\n<p>\u5982\u679c\u6709\u4e13\u901a\u4eba\u624d\u60f3\u8981\u517c\u804c\uff0c\u8bf7\u7559\u4e0b\u8054\u7cfb\u65b9\u5f0f\u3002</p>\n", 
      "date_published": "2026-01-31T01:24:57+00:00", 
      "title": "\u9006\u5411\u4e13\u9898\uff1a\u5bf9\u4e8e web \u7aef\u91c7\u7528 wasm+protobuf \u7684\u67b6\u6784\uff0c\u8fd8\u6709\u9006\u5411\u7684\u53ef\u80fd\u6027\u5417", 
      "id": "https://www.v2ex.com/t/1189693"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/prettyJs", 
        "name": "prettyJs", 
        "avatar": "https://cdn.v2ex.com/avatar/1e44/b83f/683156_large.png?m=1767149589"
      }, 
      "url": "https://www.v2ex.com/t/1188939", 
      "date_modified": "2026-01-30T02:29:04+00:00", 
      "content_html": "\u4f5c\u4e3a\u4e00\u540d\u524d\u7aef\u5f00\u53d1\u5de5\u7a0b\u5e08\uff0c\u5728\u4f7f\u7528\u8fc7 AI \u7f16\u8f91\u5668\u548c Claude Code \u4e4b\u540e\uff0c\u6211\u5bf9 UI \u5f00\u53d1\u7684\u79ef\u6781\u6027\u5df2\u7ecf\u660e\u663e\u4e0b\u964d\u4e86\u3002\u4e0d\u8fc7\uff0c\u6211\u603b\u89c9\u5f97\u81ea\u5df1\u73b0\u5728\u7528 AI \u5f00\u53d1\u754c\u9762\u7684\u65b9\u5f0f\u4f3c\u4e4e\u6709\u4e9b\u8fc7\u65f6\u3002<br /><br />\u76ee\u524d\u6211\u4eec\u7684\u539f\u578b\u8bbe\u8ba1\u4e3b\u8981\u4f7f\u7528\u58a8\u5200\u3002\u6bcf\u5f53\u4ea7\u54c1\u7ecf\u7406\u4ea4\u4ed8\u9ad8\u4fdd\u771f\u539f\u578b\u56fe\u540e\uff0c\u6211\u7684\u7b2c\u4e00\u6b65\u901a\u5e38\u662f\u622a\u56fe\uff0c\u7136\u540e\u8ba9 AI \u4f9d\u636e\u56fe\u7247\u751f\u6210\u9875\u9762\u4ee3\u7801\u3002\u5982\u679c\u539f\u578b\u4e2d\u5305\u542b\u56fe\u7247\u7d20\u6750\uff0c\u6211\u4ecd\u7136\u9700\u8981\u624b\u52a8\u5c06\u5b83\u4eec\u6dfb\u52a0\u5230\u9879\u76ee\u4e2d\uff0c\u518d\u8ba9 AI \u5f15\u5165\u5bf9\u5e94\u8def\u5f84\u3002\u4e1a\u52a1\u903b\u8f91\u7684\u90e8\u5206\u6682\u4e14\u4e0d\u8bf4\uff0c\u6211\u603b\u611f\u89c9\u73b0\u5728\u662f\u4e0d\u662f\u5df2\u7ecf\u6709\u66f4\u6d41\u7545\u3001\u66f4\u667a\u80fd\u7684\u5de5\u4f5c\u6d41\u7a0b\u4e86\uff1f<br /><br />\u4f8b\u5982\uff0c\u662f\u5426\u53ef\u4ee5\u5c06\u6240\u6709\u622a\u56fe\u6253\u5305\u6210\u538b\u7f29\u6587\u4ef6\uff0c\u76f4\u63a5\u4ea4\u7ed9 Claude Code \u5904\u7406\uff1f\u6216\u8005\u662f\u5426\u5b58\u5728\u5176\u4ed6\u539f\u578b\u8bbe\u8ba1\u5de5\u5177\uff0c\u80fd\u591f\u4e0e Claude Code \u8fd9\u7c7b AI \u5de5\u5177\u66f4\u81ea\u7136\u5730\u8054\u52a8\uff0c\u5b9e\u73b0\u4ece\u8bbe\u8ba1\u5230\u4ee3\u7801\u7684\u66f4\u987a\u7545\u8f6c\u6362\uff1f", 
      "date_published": "2026-01-28T02:24:31+00:00", 
      "title": "AI \u65f6\u4ee3\u4f60\u4eec\u662f\u600e\u4e48\u5f00\u53d1\u524d\u7aef\u9875\u9762\u7684\uff1f", 
      "id": "https://www.v2ex.com/t/1188939"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/jeffv", 
        "name": "jeffv", 
        "avatar": "https://cdn.v2ex.com/avatar/8ee4/150b/642149_large.png?m=1768911736"
      }, 
      "url": "https://www.v2ex.com/t/1187160", 
      "title": "\u6709\u5927\u4f6c\u5728 qiankun \u4e2d\u7ed3\u5408\u8054\u90a6\u6a21\u5757\u7684\u5417", 
      "id": "https://www.v2ex.com/t/1187160", 
      "date_published": "2026-01-20T12:24:29+00:00", 
      "content_html": "<p>\u6709\u5927\u4f6c\u5728 qiankun \u4e2d\u7ed3\u5408\u8054\u90a6\u6a21\u5757\u7684\u5417\uff0c\u6709\u8e29\u5751\u7ecf\u9a8c\u53ef\u4ee5\u5206\u4eab\u7684\u4e0d</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/id7368", 
        "name": "id7368", 
        "avatar": "https://cdn.v2ex.com/avatar/f5f0/6f7e/204968_large.png?m=1747014329"
      }, 
      "url": "https://www.v2ex.com/t/1183925", 
      "title": "Tailwind CSS \u5728\u672c\u5468\u88c1\u5458 75% \u539f\u56e0\u662f\u53d7 AI \u51b2\u51fb", 
      "id": "https://www.v2ex.com/t/1183925", 
      "date_published": "2026-01-08T02:13:08+00:00", 
      "content_html": "<p>Tailwind Labs CEO \u8bf4\u662f\u6587\u6863\u8bbf\u95ee\u91cf\u8f83 2023 \u5e74\u66b4\u8dcc 40%\uff0c\u6587\u6863\u8bbf\u95ee\u5c11\u4e86\u5927\u5bb6\u63a5\u89e6\u5230 Tailwind \u5546\u4e1a\u4ea7\u54c1\u7684\u6982\u7387\u4e5f\u964d\u4f4e\u4e86\u3002</p>\n<p>\u8bf4\u8d77\u6765\u80af\u5b9a\u662f\u5927\u5bb6\u76f4\u63a5\u7528 AI \u54a8\u8be2\u6587\u6863\u6216\u8005\u76f4\u63a5\u751f\u6210\u4ee3\u7801\uff0c\u8bbf\u95ee\u6587\u6863\u6216\u8005\u8d2d\u4e70\u5546\u4e1a\u4ea7\u54c1\u7684\u6982\u7387\u80af\u5b9a\u662f\u964d\u4f4e\u7684\u3002</p>\n<p>\u53c2\u4e0e\u8ba8\u8bba\uff1a <a href=\"https://github.com/tailwindlabs/tailwindcss.com/pull/2388\" rel=\"nofollow\">https://github.com/tailwindlabs/tailwindcss.com/pull/2388</a></p>\n<p>\u539f\u6587\uff1a <a href=\"https://www.landiannews.com/archives/111526.html\" rel=\"nofollow\">https://www.landiannews.com/archives/111526.html</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/darkings90", 
        "name": "darkings90", 
        "avatar": "https://cdn.v2ex.com/avatar/fade/b78a/566320_large.png?m=1736154776"
      }, 
      "url": "https://www.v2ex.com/t/1183249", 
      "title": "\u6709\u6ca1\u6709\u524d\u7aef\u7ec4\u4ef6\u5b9e\u73b0\u53d8\u91cf\u662f\u4e2a\u6807\u7b7e\uff0c\u5176\u4ed6\u5b57\u662f\u9ed1\u8272\u6587\u5b57\u7684\u7ec4\u4ef6\u5e93", 
      "id": "https://www.v2ex.com/t/1183249", 
      "date_published": "2026-01-05T07:29:23+00:00", 
      "content_html": "<p>\u6709\u6ca1\u6709\u524d\u7aef\u7ec4\u4ef6\u5b9e\u73b0\u53d8\u91cf\u662f\u4e2a\u6807\u7b7e\uff0c\u5176\u4ed6\u5b57\u662f\u9ed1\u8272\u6587\u5b57\u7684\u7ec4\u4ef6\u5e93</p>\n<p>\u6bd4\u5982\u5982\u4e0b\u6587\u5b57</p>\n<p>\u6211\u7684\u59d3\u540d\u662f#{<a href=\"http://user.name\" rel=\"nofollow\">user.name</a>}</p>\n<p>\u4ece\u754c\u9762\u4e0a\u770b#{<a href=\"http://user.name\" rel=\"nofollow\">user.name</a>}\u662f\u4e00\u4e2a\u6574\u4f53\u5e76\u4e14\u6709\u9ad8\u4eae\uff0c\u7c7b\u4f3c\u6807\u7b7e\u4e00\u6837\u7684\u5c55\u793a\uff0c\u5f53\u6211\u5728}\u540e\u9762\u6309\u4e0b\u5220\u9664\u952e\u7684\u65f6\u5019\u662f\u628a\u6574\u4e2a#{<a href=\"http://user.name\" rel=\"nofollow\">user.name</a>}\u5220\u6389\uff0c\u5176\u4ed6\u7684\u6587\u5b57\"\u6211\u7684\u59d3\u540d\u662f\"\u8fd8\u662f\u9ed1\u8272</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/VagabondH", 
        "name": "VagabondH", 
        "avatar": "https://cdn.v2ex.com/gravatar/5e51718fc6ba0ee1e5f933d9ee92d3de?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1182227", 
      "title": "1.5 \u5c0f\u65f6\u7528 ai \u5199\u4e86\u4e2a web \u6050\u6016\u5c0f\u6e38\u620f", 
      "id": "https://www.v2ex.com/t/1182227", 
      "date_published": "2025-12-30T09:56:24+00:00", 
      "content_html": "Gemini3 \u592a\u597d\u7528\u4e86<br /><br />\u9884\u89c8\u5730\u5740\uff1a <a target=\"_blank\" href=\"https://54zwwz-5000.csb.app/\" rel=\"nofollow noopener\">https://54zwwz-5000.csb.app/</a>  <br />\u6e90\u4ee3\u7801\u5730\u5740\uff1a <a target=\"_blank\" href=\"https://codesandbox.io/p/sandbox/sweet-kapitsa-j6xd2c\" rel=\"nofollow noopener\">https://codesandbox.io/p/sandbox/sweet-kapitsa-j6xd2c</a>"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/PEALFK", 
        "name": "PEALFK", 
        "avatar": "https://cdn.v2ex.com/avatar/0f7c/dd54/601732_large.png?m=1761099849"
      }, 
      "url": "https://www.v2ex.com/t/1181966", 
      "title": "30USD \u6708\u5ea6\u5f00\u53d1\u9884\u7b97\uff0c\u524d\u7aef er \u90fd\u5728\u7528\u4ec0\u4e48 AI \u7f16\u7a0b\u5de5\u5177\uff1f", 
      "id": "https://www.v2ex.com/t/1181966", 
      "date_published": "2025-12-29T09:28:22+00:00", 
      "content_html": "<p>\u95ee\u95ee\u5404\u4f4d\u5927\u4f6c~</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/leosj", 
        "name": "leosj", 
        "avatar": "https://cdn.v2ex.com/gravatar/5192e289c04be2353e033c1aafb80983?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1181597", 
      "title": "\u73b0\u5728\u6709\u4e9b\u7f51\u7ad9\u8fd8\u8981\u6c42 ie \u8bbf\u95ee", 
      "id": "https://www.v2ex.com/t/1181597", 
      "date_published": "2025-12-27T10:02:49+00:00", 
      "content_html": "\u7528\u5176\u4ed6\u6d4f\u89c8\u5668\u8fd8\u6253\u4e0d\u5f00\uff0c\u505a\u524d\u7aef\u7684\u597d\u591a\u90fd\u4e0d\u8981\u6c42\u517c\u5bb9 ie \u4e86\u5427"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/asei2482dv93", 
        "name": "asei2482dv93", 
        "avatar": "https://cdn.v2ex.com/gravatar/35981ec6dd0143476ec516406a73c039?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1181459", 
      "title": "\u5de5\u4f5c\u4e86 5 \u5e74\u4ee5\u4e0a\u7684\u524d\u7aef\uff0c\u65e0\u6cd5\u5feb\u901f\u7b54\u51fa animation\u3001transform\u3001transition \u7684\u533a\u522b\u7b97\u83dc\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/1181459", 
      "date_published": "2025-12-26T10:41:15+00:00", 
      "content_html": "<p>\u6700\u8fd1\u5728\u5e2e\u516c\u53f8\u62db\u8058\u524d\u7aef\u5f00\u53d1\uff0c\u62ff\u5230\u7684\u7b80\u5386\u5f88\u591a\u90fd\u662f 7-9 \u5e74\u7ecf\u9a8c\uff0c\u6700\u5c11\u4e5f\u662f 5 \u5e74\u7ecf\u9a8c\u7684\u3002</p>\n<p>\u9762\u8bd5\u95ee\u7684\u5176\u4e2d\u4e00\u9898\u662f\uff1a\u201c animation \u3001transform \u3001transition \u7684\u533a\u522b\u662f\u4ec0\u4e48\uff1f\u201d</p>\n<p>\u6709\u7684\u8981\u60f3\u51e0\u79d2\u949f\u624d\u80fd\u5f00\u59cb\u7b54\u590d\uff0c\u6709\u7684\u652f\u652f\u543e\u543e\u7684\u8bf4\u201c\u597d\u50cf\u662f\u3002\u3002\u3002\u201d\uff0c\u6709\u7684\u751a\u81f3\u8bb0\u6df7\u4e86\u3002</p>\n<p>\u5728\u6211\u7684\u524d\u7aef\u5de5\u4f5c\u751f\u6daf\u4e2d\uff0c\u8fd9\u4e09\u4e2a\u5c5e\u6027\u7684\u4f7f\u7528\u9891\u7387\u662f\u975e\u5e38\u9ad8\u7684\uff0c\u4e0d\u81f3\u4e8e\u8981\u60f3\u597d\u4e45\u5427\u3002\u3002\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/jaydenWang", 
        "name": "jaydenWang", 
        "avatar": "https://cdn.v2ex.com/gravatar/141c89ffa8a73d8260944f39455a92cb?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1178890", 
      "title": "\u505a WYSIWYG Markdown \u7f16\u8f91\u5668\u65f6\uff0c\u6211\u4e3a\u4ec0\u4e48\u6ca1\u7ee7\u7eed\u7528 zustand\uff0c\u800c\u662f\u5199\u4e86 Zenith", 
      "id": "https://www.v2ex.com/t/1178890", 
      "date_published": "2025-12-15T01:51:15+00:00", 
      "content_html": "<p>\u6211\u5728\u505a\u4e00\u4e2a WYSIWYG Markdown \u7f16\u8f91\u5668\uff08 domd \uff09\uff0c\u4f53\u79ef\u5927\u7ea6 20KB \u3002\u8fd9\u662f\u4e00\u4e2a\u7eaf\u6570\u636e\u9a71\u52a8\u7684\u7f16\u8f91\u5668\u3002</p>\n<p><strong>Demo:</strong> <a href=\"https://demo.domd.app/?src=https://github.com/do-md/zenith/blob/main/README.zh-CN.md\" rel=\"nofollow\">WYSIWYG Markdown</a></p>\n<p>\u5728\u8fd9\u4e2a\u7f16\u8f91\u5668\u91cc\uff0c\u72b6\u6001\u7ba1\u7406\u662f\u6838\u5fc3\u95ee\u9898\u3002\u6211\u628a domd \u7684\u72b6\u6001\u7ba1\u7406\u5355\u72ec\u62bd\u51fa\u6765\uff0c\n\u5c01\u88c5\u6210\u4e86\u4e00\u4e2a\u5e93\uff1aZenith \u3002</p>\n<p><strong>Github:</strong> <a href=\"https://github.com/do-md/zenith\" rel=\"nofollow\">Zenith</a></p>\n<p>Zenith \u7684\u601d\u8def\u5e76\u4e0d\u590d\u6742\uff1a\n\u628a\u6d3e\u751f\u72b6\u6001\u3001\u7f13\u5b58\u548c\u4f9d\u8d56\u5173\u7cfb\uff0c\u660e\u786e\u5730\u653e\u5728 store \u5185\u90e8\uff0c\n\u800c\u4e0d\u662f\u5206\u6563\u5728\u7ec4\u4ef6\u548c\u5404\u79cd selector \u91cc\u3002</p>\n<p>\u8fd9\u6837\u5e26\u6765\u7684\u7ed3\u679c\u662f\uff1a</p>\n<ul>\n<li>\u6d3e\u751f\u72b6\u6001\u53ef\u4ee5\u88ab\u7a33\u5b9a\u7f13\u5b58</li>\n<li>\u7ec4\u4ef6\u62ff\u5230\u7684\u662f\u7a33\u5b9a\u5f15\u7528</li>\n<li>\u6027\u80fd\u8868\u73b0\u66f4\u53ef\u9884\u6d4b\uff0c\u4e0d\u9700\u8981\u53cd\u590d\u201c\u8c03\u201d</li>\n</ul>\n<p>\u53e6\u4e00\u4e2a\u6bd4\u8f83\u5173\u952e\u7684\u70b9\u662f undo / redo \u3002\nZenith \u662f\u57fa\u4e8e Immer patch \u7684\uff0c\n\u4e0d\u4f9d\u8d56\u6574\u68f5 state \u7684\u5feb\u7167\u3002\n\u5728\u5927\u6570\u636e\u91cf\u3001\u9891\u7e41\u7f16\u8f91\u7684\u573a\u666f\u4e0b\uff0c\u8fd9\u4e00\u70b9\u5dee\u5f02\u5f88\u660e\u663e\u3002</p>\n<p>Zenith \u4e0d\u662f\u901a\u7528\u578b\u72b6\u6001\u5e93\uff0c\u4e5f\u4e0d\u8ffd\u6c42\u7b80\u5355\u3002\n\u5982\u679c\u4f60\u5728\u505a\u7f16\u8f91\u5668\u3001\u753b\u5e03\u6216\u7c7b\u4f3c\u7684\u590d\u6742\u524d\u7aef\uff0c\n\u53ef\u80fd\u4f1a\u5bf9\u8fd9\u79cd\u8bbe\u8ba1\u65b9\u5f0f\u6709\u5174\u8da3\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/user9121", 
        "name": "user9121", 
        "avatar": "https://cdn.v2ex.com/gravatar/820a611f3a29a7edd4a801bb9259d3b4?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1177910", 
      "title": "\u8bf7\u6559\u4e00\u4e0b AI \u5982\u4f55\u5199\u524d\u7aef\u4ee3\u7801", 
      "id": "https://www.v2ex.com/t/1177910", 
      "date_published": "2025-12-09T21:15:32+00:00", 
      "content_html": "<p>\u6211\u662f\u4e00\u4e2a\u540e\u7aef,\u6709\u65f6\u5019\u81ea\u5df1\u505a\u4e00\u4e9b\u5c0f\u5de5\u5177,\u540e\u7aef\u903b\u8f91\u6211\u4e00\u8fb9\u662f\u901a\u7528\u65b9\u6cd5\u8ba9 AI \u5199\u4e00\u4e0b,\u6bd4\u5982\u6392\u5e8f,\u8fc7\u6ee4.\n\u4f46\u662f\u524d\u7aef\u5982\u4f55\u8ba9 AI \u5199,\u662f\u628a\u8bbe\u8ba1\u56fe\u53d1\u7ed9 AI \u5c31\u53ef\u4ee5\u5b8c\u6210\u6240\u6709\u7684\u4ee3\u7801\u5417?\n\u4e0d\u7136 AI \u600e\u4e48\u77e5\u9053\u754c\u9762\u957f\u5565\u6837?</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/apades", 
        "name": "apades", 
        "avatar": "https://cdn.v2ex.com/avatar/c9f7/2311/666115_large.png?m=1765084283"
      }, 
      "url": "https://www.v2ex.com/t/1177308", 
      "title": "\u6700\u8fd1\u641e\u4e86\u4e2a Vue \u7684 babel \u63d2\u4ef6\uff0c\u53ef\u4ee5\u8ba9 Vue \u7684 jsx \u8bed\u6cd5\u66f4\u52a0\u63a5\u8fd1 React", 
      "id": "https://www.v2ex.com/t/1177308", 
      "date_published": "2025-12-06T15:29:02+00:00", 
      "content_html": "<p>\u56e0\u4e3a\u6709\u70b9\u53d7\u4e0d\u4e86 React \u7684\u7ec6\u5206\u7ec4\u4ef6\u4f18\u5316\uff0c\u60f3\u8bd5\u8bd5 Vue \u7684 jsx \uff0c\u7ed3\u679c\u8981\u81ea\u5df1\u5b9a\u4e49 props + defineComponent \u5199\u6cd5\u597d\u9ebb\u70e6\uff0c\u6240\u4ee5\u81ea\u5df1\u82b1\u4e86 2 \u4e2a\u661f\u671f\u7684\u65f6\u95f4\u53bb\u628a @<a href=\"/member/vitejs\">vitejs</a>/plugin-vue-jsx \u9b54\u6539\u4e86\u4e0b\uff0c\u4f7f\u8bed\u6cd5\u66f4\u63a5\u8fd1 React \u4e86\ud83d\udc48\ud83e\udd23</p>\n<p>\u4e3e\u4e2a\ud83c\udf30</p>\n<pre><code class=\"language-tsx\">import { effect, ref, type VNode } from 'vue'\ntype Props = {\n  name: string\n  header: (count: number) =&gt; VNode\n  children?: VNode\n}\ntype Handler = {\n  addCount: () =&gt; void\n}\nfunction ChildComp(props: Props) {\n  const innerCount = ref(0)\n  defineExpose&lt;Handler&gt;({\n    addCount() {\n      innerCount.value++\n    },\n  })\n  if(!props.children) return &lt;div&gt;no children&lt;/div&gt;\n\n  return (\n    &lt;&gt;\n      &lt;div&gt;{props.header(innerCount.value)}&lt;/div&gt;\n      &lt;div onClick={() =&gt; innerCount.value++}&gt;\n        {props.name} count: {innerCount.value}\n      &lt;/div&gt;\n      {props.children}\n    &lt;/&gt;\n  )\n}\n</code></pre>\n<p>\u9879\u76ee\u76ee\u524d\u5c31 preview \u7248\u672c\uff0c\u8fd8\u4e0d\u7b97\u7a33\u5b9a</p>\n<p><a href=\"https://github.com/apades/make-vue-coding-more-like-react\" rel=\"nofollow\">https://github.com/apades/make-vue-coding-more-like-react</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/TrackBack", 
        "name": "TrackBack", 
        "avatar": "https://cdn.v2ex.com/gravatar/33c6b285c23c89c9711033aa6bf64d99?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1176685", 
      "title": "\u60f3\u5728\u5199\u7684\u514d\u8d39 chrome \u63d2\u4ef6\u4e2d\u589e\u52a0\u5185\u8d2d\uff0c\u6c42\u8d5a\u5230\u94b1\u7684\u5927\u4f6c\u89e3\u7b54", 
      "id": "https://www.v2ex.com/t/1176685", 
      "date_published": "2025-12-03T08:21:15+00:00", 
      "content_html": "<ol>\n<li>\u4f7f\u7528\u56fd\u5185\u94f6\u884c\u53d1\u884c\u7684 VISA \u5361\u652f\u4ed8\u5f00\u53d1\u8005\u6ce8\u518c\u8d39\uff0c\u540e\u7eed\u6709\u88ab google ban \u7684\u98ce\u9669\u5417\uff1f</li>\n<li>\u589e\u52a0\u5185\u8d2d\u5e94\u8be5\u628a\u4ea4\u6613\u8005\u58f0\u660e\u6539\u6210\u201c\u4ea4\u6613\u8005\u201d\u5417\uff1f\u6309\u8bf4\u660e\u5e94\u8be5\u8981\u9009\uff0c\u4f46\u662f\u4e5f\u770b\u5230\u5f88\u591a\u63d2\u4ef6\u9009\u7684\u201c\u975e\u4ea4\u6613\u8005\u201d\uff0c\u540c\u65f6\u4e5f\u63d0\u4f9b\u5185\u8d2d\u3002</li>\n<li>\u5982\u679c\u4e0d\u60f3\u516c\u5f00\u4e2a\u4eba\u4fe1\u606f\uff0c\u9700\u8981\u6ce8\u518c\u516c\u53f8\u6765\u6536\u6b3e\u5417\uff1f\u5982\u679c\u4e3b\u8981\u9762\u5411\u6d77\u5916\u5e02\u573a\uff0c\u5e94\u8be5\u6ce8\u518c\u56fd\u5185\u8fd8\u662f\u56fd\u5916\u516c\u53f8\uff1f\u63a5\u5165\u4ec0\u4e48\u652f\u4ed8\u5e73\u53f0\u6bd4\u8f83\u597d\uff1f</li>\n<li>\u770b\u5230\u6709\u4e00\u4e9b\u4ee3\u6536\u670d\u52a1\uff0c\u7c7b\u4f3c\u7528\u6237\u94b1\u6253\u7ed9\u4ed6\u4eec\u7136\u540e\u5b9a\u671f\u8f6c\u4eba\u6c11\u5e01\u7ed9\u6211\uff0c\u8fd9\u6837\u7684\u670d\u52a1\u53ef\u9760\u5417\uff1f\u770b\u8d77\u6765\u6709\u6d17\u94b1\u7684\u98ce\u9669\uff0c\u4f1a\u4e0d\u4f1a\u88ab\u67e5\u6536\u5165\u6765\u6e90\uff1f</li>\n</ol>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/byp", 
        "name": "byp", 
        "avatar": "https://cdn.v2ex.com/avatar/e672/f47d/405182_large.png?m=1770654570"
      }, 
      "url": "https://www.v2ex.com/t/1176463", 
      "title": "Google \u7ffb\u8bd1\u4e0d\u8ba9\u4f7f\u7528 iframe \u5d4c\u5165\uff0c\u90a3\u4e48 uTools \u7684\u7ffb\u8bd1\u63d2\u4ef6\u662f\u5982\u4f55\u505a\u5230\u7684\u5462\uff1f", 
      "id": "https://www.v2ex.com/t/1176463", 
      "date_published": "2025-12-02T12:05:29+00:00", 
      "content_html": "<h3>iframe \u5d4c\u5165\u7684</h3>\n<p><img alt=\"iframe \u5d4c\u5165\u7684\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://imgbed.baiyapeng.cc/file/1764676993632_image.png\"/></p>\n<h3>uTools \u7ffb\u8bd1\u63d2\u4ef6\uff0c\u770b\u7740\u597d\u50cf\u4e5f\u662f iframe \u5d4c\u5165\u7684</h3>\n<p><img alt=\"uTools \u7ffb\u8bd1\u63d2\u4ef6\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://imgbed.baiyapeng.cc/file/1764676998964_image.png\"/></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/tt83", 
        "name": "tt83", 
        "avatar": "https://cdn.v2ex.com/gravatar/c026d111eda5fe02e599cef3c5742f03?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1175967", 
      "title": "\u8fd9\u79cd\u7ebf\u6846\u53eb\u4ec0\u4e48\u98ce\u683c\u7684 UI", 
      "id": "https://www.v2ex.com/t/1175967", 
      "date_published": "2025-11-30T11:02:49+00:00", 
      "content_html": "<a target=\"_blank\" href=\"https://i.imgur.com/1RMSjp9.png\" rel=\"nofollow noopener\" target=\"_blank\"><img src=\"https://i.imgur.com/1RMSjp9.png\" class=\"embedded_image\" rel=\"noreferrer\"></a><br /><br />\u65f6\u4e0d\u65f6\u770b\u5230\uff0c\u6709\u6ca1\u6709\u670b\u53cb\u77e5\u9053\u8fd9\u79cd\u7ebf\u6846\u98ce\u683c\u4e13\u4e1a\u540d\u8bcd\u53eb\u4ec0\u4e48\uff0c\u6709\u5e93\u53ef\u4ee5\u5b9e\u73b0\u8fd9\u79cd UI \u98ce\u683c\u5417\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/SWBMESSI", 
        "name": "SWBMESSI", 
        "avatar": "https://cdn.v2ex.com/avatar/8c28/4c42/283615_large.png?m=1682403868"
      }, 
      "url": "https://www.v2ex.com/t/1175339", 
      "date_modified": "2025-11-27T02:40:14+00:00", 
      "content_html": "<p>\u672c\u4eba\u4e60\u60ef\u4e86\u501f\u52a9\u4e8e macos mindnode \u601d\u8003\u7684\u65b9\u5f0f\uff0c\u5207\u6362 windows \u6ca1\u6709\u8d81\u624b\u7684\u601d\u7ef4\u5bfc\u56fe\u7528\uff0c</p>\n<p>\u4e8e\u662f\u60f3\u624b\u6413\u4e00\u4e2a\u8fd1\u4f3c\u7684\uff0c\u4f46\u662f\u5f00\u53d1\u4e00\u70b9\u540e\u7a81\u7136\u60f3\u6d4b\u4e00\u4e0b\u8282\u70b9\u591a\u4e86\u6027\u80fd\u5982\u4f55\uff0c</p>\n<p>\u4e0d\u6d4b\u4e0d\u77e5\u9053\u4e00\u6d4b\u5413\u4e00\u8df3\uff0c\u4e8c\u5341\u591a\u4e2a\u8282\u70b9\u62d6\u62fd\u7684\u65f6\u5019 fps \u53ea\u6709\u5341\u51e0\u4e8c\u5341</p>\n<p>\u6c42\u52a9\u4e00\u4e0b\uff0c\u662f\u5426\u662f Canvas \u7684\u5c40\u9650\uff0c\u8fd8\u662f\u54ea\u91cc\u53ef\u4ee5\u4f18\u5316\uff1f</p>\n", 
      "date_published": "2025-11-27T02:07:15+00:00", 
      "title": "Canvas FPS \u53ea\u6709 10 \u51e0 \u6c42\u52a9", 
      "id": "https://www.v2ex.com/t/1175339"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/andrew2558", 
        "name": "andrew2558", 
        "avatar": "https://cdn.v2ex.com/gravatar/7ccd520b8f415dcbfb6fb096c63567ff?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1175285", 
      "title": "Antd V6 \u7248\u672c\u53d1\u5e03\u4e86\uff01", 
      "id": "https://www.v2ex.com/t/1175285", 
      "date_published": "2025-11-26T13:49:15+00:00", 
      "content_html": "<p>\u611f\u8c22 antd \u56e2\u961f\u4e3a\u6211\u4eec\u63d0\u4f9b\u8fd9\u4e48\u597d\u7684\u4ea7\u54c1\n<a href=\"https://github.com/ant-design/ant-design/issues/55805\" rel=\"nofollow\">https://github.com/ant-design/ant-design/issues/55805</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/itchina110", 
        "name": "itchina110", 
        "avatar": "https://cdn.v2ex.com/avatar/2d5b/53f8/10411_large.png?m=1758701556"
      }, 
      "url": "https://www.v2ex.com/t/1174977", 
      "title": "\u4f60\u662f AI \u7684\u4e3b\u4eba\uff0c\u8fd8\u662f AI \u7684 Debugger\uff1f", 
      "id": "https://www.v2ex.com/t/1174977", 
      "date_published": "2025-11-25T09:14:26+00:00", 
      "content_html": "\u8f93\u51fa\u4e86\u4ee3\u7801\uff0c<br />\u5374\u4e0d\u6562\u76f4\u63a5\u7528\uff1b<br />\u770b\u4f3c\u8282\u7701\u4e86\u65f6\u95f4\uff0c<br />\u5374\u82b1\u4e86\u4e00\u4e0b\u5348\u5728\u4fee AI \u7684 Bug \u3002<br /><br />\u5199\u4ee3\u7801\u65f6\uff0c\u4f60\u662f\u5426\u4e5f\u6709\u8fc7\u8fd9\u79cd\u201c\u65e0\u529b\u611f\u201d?<br />\u8fd9\u5c31\u662f AI \u7f16\u7a0b\u7684\u9690\u5f62\u4ee3\u4ef7 - \u8ba4\u77e5\u7a0e\u3002<br /><br />\u6708\u4e4b\u6697\u9762 Tech Staff \uff0c\u524d\u5feb\u624b K5 &amp; Web \u901a\u9053\u59d4\u5458\u4fde\u5929\u7fd4\u786e\u8ba4\u51fa\u5e2d 12 \u6708 20 \u65e5\u5728\u957f\u6c99\u4e3e\u529e\u7684 FEDAY 2025 \uff0c\u5e26\u6765\u4e3b\u9898\u4e3a\u300a AI \u7f16\u7a0b\u7684\"\u8ba4\u77e5\u7a0e\"\u300b\u7684\u6f14\u8bb2\u3002<br /><br />\u65e9\u9e1f\u7968\u706b\u70ed\u62a2\u8d2d\u4e2d\uff1a <a target=\"_blank\" href=\"https://fequan.com/2025\" rel=\"nofollow noopener\">https://fequan.com/2025</a><br /><br />\u62d2\u7edd\u76f2\u76ee\u5439\u6367\uff0c\u53ea\u8bb2\u6b8b\u9177\u73b0\u5b9e\u3002<br /><br />\u5929\u7fd4\u5c06\u4ece\u4e00\u4e2a\u5de5\u7a0b\u5e08\u7684\u7406\u6027\u89c6\u89d2\uff0c\u8ba8\u8bba AI \u7f16\u7a0b\u7684\u201c\u9690\u5f62\u4ee3\u4ef7\u201d\uff1a<br />\ud83d\udeab \u4e3a\u4ec0\u4e48 3~8 \u5206\u96be\u5ea6\u7684\u4efb\u52a1\u662f\u6700\u5927\u7684\u201c\u6548\u7387\u9677\u9631\u201d\uff1f<br />\ud83d\udeab \u4e3a\u4ec0\u4e48 pass@n \u5b9e\u9645\u4e0a\u589e\u52a0\u4e86\u4f60\u7684\u51b3\u7b56\u6210\u672c\uff1f<br /><br />\u542c\u5b8c\u8fd9\u573a\u5206\u4eab\uff0c\u4f60\u5c06\u5e26\u8d70\u4e00\u5957\u6709\u4ef7\u503c\u7684\u601d\u8003\u65b9\u5f0f\uff1a\ud83d\udee0\ufe0f \u300c\u8ba4\u77e5\u7a0e\u81ea\u8bc4\u8868\u300d\u3002<br /><br />\u4e00\u5f20\u8868\uff0c\u5e2e\u4f60\u77ac\u95f4\u51b3\u7b56\uff1a<br />\u2705 \u5168\u6743\u59d4\u6258\uff08 Let AI do it \uff09<br />\u26a0\ufe0f \u4eb2\u81ea\u64cd\u5200\uff08 You do it \uff09<br />\ud83d\udd04 \u4eba\u673a\u901a\u8fc7\uff08 Co-pilot \uff09<br /><br />\u4f60\u9700\u8981\u77e5\u9053\u4ec0\u4e48\u65f6\u5019\u628a\u624b\u4ea4\u51fa\u53bb\uff0c\u66f4\u8981\u77e5\u9053\u4ec0\u4e48\u65f6\u5019\u628a\u624b\u6536\u56de\u6765\u3002<br /><br />\u522b\u8ba9 AI \u6210\u4e3a\u4f60\u7684\u8001\u677f\uff0c12 \u6708 20 \u65e5\u6765 FEDAY \uff0c\u5b66\u4f1a\u5728\u667a\u80fd\u65f6\u4ee3\u201c\u53cd\u5ba2\u4e3a\u4e3b\u201d\u3002<br /><br />\ud83d\udcc5 FEDAY 2025 \u300c\u524d\u7aef\uff0c\u4e0d\u6b62\u4e8e AI \u300d\u3002\u66f4\u5728\u4e8e\u9a7e\u9a6d AI \u7684\u4f60\u3002<br /><br />\ud83c\udfab \u65e9\u9e1f\u7968\u5012\u8ba1\u65f6\uff0c\u7acb\u5373\u8fdb\u5165\u5b98\u7f51\u62a2\u7968\uff1a <a target=\"_blank\" href=\"https://fequan.com/2025\" rel=\"nofollow noopener\">https://fequan.com/2025</a>"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/leosj", 
        "name": "leosj", 
        "avatar": "https://cdn.v2ex.com/gravatar/5192e289c04be2353e033c1aafb80983?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1174586", 
      "title": "\u60f3\u628a\u4e00\u4e2a\u56fe\u7247\u53d8\u6210\u52a8\u56fe\u7528\u4ec0\u4e48\u6a21\u578b\u597d\u554a", 
      "id": "https://www.v2ex.com/t/1174586", 
      "date_published": "2025-11-24T01:31:14+00:00", 
      "content_html": "\u4e00\u4e2a\u56fe\uff0c\u751f\u6210\u52a8\u56fe\uff0c\u4ee5\u53ca\u5f00\u5fc3\u52a8\u56fe\uff0c\u5404\u79cd\u8868\u60c5\u7684\u52a8\u56fe\u7528\u54ea\u4e2a\u597d"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/zficode", 
        "name": "zficode", 
        "avatar": "https://cdn.v2ex.com/avatar/feea/1975/526639_large.png?m=1746499202"
      }, 
      "url": "https://www.v2ex.com/t/1174289", 
      "title": "\u6c42\u4e00\u4efd\u8f6c\u6b63\u7b54\u8fa9 PPT \u6a21\u677f", 
      "id": "https://www.v2ex.com/t/1174289", 
      "date_published": "2025-11-21T10:43:23+00:00", 
      "content_html": "<p>\u5927\u4f6c\u4eec\uff0c\u6709\u6ca1\u6709\u7b54\u8fa9\u8f6c\u6b63\u7684 PPT \u6a21\u677f\u5462</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/coderzww", 
        "name": "coderzww", 
        "avatar": "https://cdn.v2ex.com/gravatar/827f3f53df01bdf7598028e2a31bfb1c?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1172909", 
      "date_modified": "2025-11-14T14:05:03+00:00", 
      "content_html": "<p>\u5148\u5410\u69fd\u4e0b\u5c0f\u7ea2\u4e66\u5c0f\u7a0b\u5e8f\uff0c\u6587\u6863\u548c\u652f\u6491\u771f\u7684\u4e00\u8a00\u96be\u5c3d\uff0c\u627e\u4e86\u4e00\u5929\u90fd\u6ca1\u627e\u5230\u5b98\u65b9\u652f\u6301\u7684\u793e\u7fa4\u5728\u54ea\uff0c\u4e4b\u524d\u7684 issue \u597d\u50cf\u4e5f\u6ca1\u4eba\u7ef4\u62a4\u4e86\u3002\u3002\u3002</p>\n<p>\u6c42\u52a9\u5927\u4f6c\uff1a\n\u6709\u6ca1\u6709\u5927\u4f6c\u77e5\u9053 \u6253\u5f00\u5ba2\u670d\u4f1a\u8bdd \u8fd9\u4e2a\u73a9\u610f\u548b\u7528\uff1f</p>\n<p>\u73b0\u5728\u60f3\u786e\u8ba4\u4e0b\u8fd9\u4e2a\u540e\u7aef\u7684\u6d88\u606f\u662f\u4e0d\u662f\u5fc5\u987b\u81ea\u5df1\u89e3\u6790\u5904\u7406\uff1f\u80fd\u50cf\u5e97\u94fa\u91cc\u6253\u5f00\u5ba2\u670d\u4e00\u6837\u76f4\u63a5\u5bf9\u63a5\u5230 \u5c0f\u7ea2\u4e66\u5b98\u65b9\u5ba2\u670d\u5e73\u53f0\u5417\uff1f\u6bd4\u5982 \u5343\u5e06\u5ba2\u6237\u5e73\u53f0</p>\n<p>\u8fd8\u662f\u8bf4\u9700\u8981\u81ea\u5df1\u5199\u670d\u52a1\u5904\u7406\u4e2d\u8f6c\uff1f</p>\n<p><a href=\"https://miniapp.xiaohongshu.com/doc/DC938602\" rel=\"nofollow\">https://miniapp.xiaohongshu.com/doc/DC938602</a></p>\n", 
      "date_published": "2025-11-14T14:04:37+00:00", 
      "title": "\u6709\u6ca1\u6709\u5927\u4f6c\u77e5\u9053\u5c0f\u7ea2\u4e66 \u5c0f\u7a0b\u5e8f \u5f00\u653e\u80fd\u529b open-type=\"contact\" \u6253\u5f00\u5ba2\u670d\u4f1a\u8bdd \u548b\u7528\uff1f", 
      "id": "https://www.v2ex.com/t/1172909"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/YuLoy", 
        "name": "YuLoy", 
        "avatar": "https://cdn.v2ex.com/gravatar/b557fd1efce882b3593eb6ddac814b1b?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1172783", 
      "date_modified": "2025-11-16T11:08:46+00:00", 
      "content_html": "<p>\u5144\u5f1f\u4eec\uff0c\u5c0f\u5f1f\u73b0\u5728\u6709\u4e00\u4e2a\u70b9\u5b50\u60f3\u8981\u5b9e\u73b0\uff0c\u6280\u672f\u9009\u578b\u65b9\u9762\u6709\u4e9b\u95ee\u9898\u60f3\u8ba9\u5927\u5bb6\u7ed9\u70b9\u5efa\u8bae\u3002\u4e3b\u8981\u9700\u6c42\u5927\u6982\u662f\u8fd9\u6837\u7684\uff0c\u5148\u505a\u684c\u9762\u7aef\uff0c\u540e\u7eed\u53ef\u80fd\u4f1a\u8fc1\u79fb\u5230\u5ba2\u6237\u7aef\u548c Web \uff0c\u7136\u540e\u524d\u7aef\u7684\u8bdd\u9700\u8981\u505a\u6570\u636e\u770b\u677f\u548c\u7b80\u5355\u4ea4\u4e92\uff08\u589e\u5220\u6539\u67e5\uff09\uff0c\u540e\u7aef\u7684\u8bdd\u505a\u6570\u636e\u65b9\u9762\u7684\u63a7\u5236\uff0c\u672c\u5730\u8f7b\u91cf\u8fd0\u7b97\uff0c\u540e\u7eed\u53ef\u80fd\u4f1a\u6709\u8fdc\u7a0b\u670d\u52a1\u5668\u540c\u6b65\u3002\n\u6280\u672f\u4e0a\u9762\u4e4b\u524d\u6211\u662f\u505a java \u7684\uff0c\u6240\u4ee5\u524d\u7aef\u8fd9\u4e00\u5757\u4e0d\u592a\u719f\u6089\uff0c\u8981\u50cf\u5168\u5e73\u53f0\u90e8\u7f72\u7684\u8bdd\uff0c\u73b0\u5728\u662f\u4e0d\u662f\u6700\u597d\u5c31\u9009 electron \u3002\u540e\u7aef\u7684\u8bdd\uff0c\u611f\u89c9 java \u4e0d\u592a\u5408\u9002\uff0c\u73b0\u5728\u662f\u8003\u8651\u4f7f\u7528 python \uff0c\u7136\u540e\u628a\u4ed6\u4eec\u4e24\u4e2a\u6253\u5305\u5728\u4e00\u8d77\u3002\n\u5927\u5bb6\u6709\u6ca1\u6709\u4ec0\u4e48\u5efa\u8bae\uff0c\u7136\u540e\u524d\u7aef\u7f8e\u5de5\u65b9\u9762\u662f\u4e0d\u662f\u6709\u6ca1\u6709\u5565\u597d\u7528\u7684 AI \u5de5\u5177\u751f\u6210\uff1f</p>\n", 
      "date_published": "2025-11-14T04:46:45+00:00", 
      "title": "\u5f00\u53d1\u6c42\u52a9\uff0c\u5c0f\u767d\u8981\u505a\u524d\u7aef\u662f\u4e0d\u662f\u4f7f\u7528 electron", 
      "id": "https://www.v2ex.com/t/1172783"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/TimG", 
        "name": "TimG", 
        "avatar": "https://cdn.v2ex.com/gravatar/9405588e62f8b12e9d70f6a498ce25af?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1172714", 
      "title": "\u8be2\u95ee\u4e0b\u9489\u9489 H5 \u5e94\u7528\u6837\u5f0f\u517c\u5bb9\u6027\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1172714", 
      "date_published": "2025-11-14T02:18:10+00:00", 
      "content_html": "\u60f3\u95ee\u4e0b\u6709\u6ca1\u6709\u505a\u8fc7\u9489\u9489 H5 \u7684\u670b\u53cb\u4e86\u89e3\u5b57\u4f53\u65e0\u6cd5\u52a0\u8f7d\u662f\u4ec0\u4e48\u60c5\u51b5\uff1f\u5e76\u4e14\u80cc\u666f\u6a21\u7cca backdrop-filter \u662f\u4e0d\u80fd\u7528\u7684\uff0c\u8bd5\u8fc7\u52a0 WebKit \u6807\u5fd7\u4e5f\u4e0d\u884c\u3002\u4f46\u5947\u602a\u7684\u662f mdn \u6587\u6863\u63d0\u793a\u8fd9\u4e2a\u6807\u7b7e\u652f\u6301 76 \u4ee5\u4e0a\u7684 chrome \u5c31\u53ef\u7528\u3002\u9489\u9489\u524d\u53f0\u6253\u5370 appVersion \u662f 100 \uff0c\u4f46\u4e0d\u80fd\u4f7f\u7528\u8fd9\u4e2a\u6837\u5f0f\u3002<br /><br />\u662f\u4e2a\u57fa\u4e8e Vue3+tailwind4 \u7684\u524d\u7aef\u9879\u76ee\uff0c\u4e3a\u4e86\u6700\u5927\u7a0b\u5ea6\u6a21\u62df\u9489\u9489\u7684\u6d4f\u89c8\u5668\u4e0b\u8f7d\u4e86 103 \u7248\u672c\u7684 chromium \uff0c\u518d\u65e7\u7684\u5b98\u65b9\u6e90\u5c31\u6ca1\u6709\u4e86\u3002\u5728\u8fd9\u4e0a\u9762\u6d4b\u8bd5\u826f\u597d\uff0c\u4f46\u662f\u5728\u9489\u9489\u4e0a\u6837\u5f0f\u5c31\u4e0d\u5bf9\u3002<br /><br />\u56e0\u4e3a\u9a6c\u4e0a\u4e0a\u7ebf\u4e86\uff0c\u6ca1\u6cd5\u6298\u817e\u9489\u9489\u7684\u8c03\u8bd5\u5de5\u5177\u3002\u73b0\u5728\u5b8c\u5168\u662f\u53e4\u6cd5 alert \u51fa\u6765\u8c03\u8bd5\u3002\u6211\u770b\u5230\u9489\u9489\u6709\u201c\u9489\u9489\u5f00\u53d1\u8005\u5de5\u5177\u201d\u652f\u6301 H5 \u8c03\u8bd5\uff0c\u4f46\u662f\u76ee\u524d\u5df2\u7ecf\u4e0d\u7ef4\u62a4\uff0c\u8ba9\u6211\u4e0b\u8f7d\u9489\u9489\u5c0f\u7a0b\u5e8f\u5f00\u53d1\u5de5\u5177\uff0c\u4f46\u662f\u9489\u9489\u5c0f\u7a0b\u5e8f\u5f00\u53d1\u5de5\u5177\u53c8\u6ca1\u6709\u8c03\u8bd5 H5 \u5fae\u5e94\u7528\u7684\u529f\u80fd\uff0c\u5982\u679c\u54ea\u4f4d\u80fd\u63d0\u4f9b\u4e0b\u90a3\u4e2a\u65e7\u7248\u201c\u5c0f\u7a0b\u5e8f\u5f00\u53d1\u5de5\u5177\u201d\u4e5f\u5f88\u611f\u8c22\uff01<br />\u5b98\u65b9\u63d0\u4f9b\u7684\u8c03\u8bd5\u5668\u597d\u5947\u602a\uff0c\u5f00\u53d1\u8005\u8d26\u53f7\u5728\u7528\u6237\u90a3\u91cc\uff0c\u6ca1\u6cd5\u7528\u5bfc\u5305\u7684\u65b9\u6cd5\u8c03\u8bd5\uff0c\u4f7f\u7528\u4ed6\u7684 IDE \u662f\u5bfc\u5165\u4e86\u6e90\u7801\u8fdb\u53bb\u91cd\u65b0 build \u4e86\u4e00\u904d\uff1f\u6211\u90fd\u5df2\u7ecf build \u597d\u4e86\u4e0d\u60f3\u518d\u914d\u4ed6 IDE \u73af\u5883\uff0c\u5176\u5b9e\u5c31\u662f\u60f3\u770b\u4e00\u4e0b chrome \u7684 debugger \uff0c\u592a\u75db\u82e6\u4e86.....<br /><br />\u6211\u4eec\u7684 UI \u8bbe\u8ba1\u662f\u56f4\u7ed5\u9ad8\u65af\u6a21\u7cca\u6765\u7684\uff0c\u73b0\u5728\u6ca1\u6cd5\u5931\u53bb backdrop-filter \uff0c\u662f\u88ab\u9489\u9489\u7981\u7528\u4e86\u5417\uff1f\u8bd5\u8fc7\u52a0\u80cc\u666f alpha \u901a\u9053\u6a21\u62df\u9ad8\u65af\u6a21\u7cca\uff0c\u4f46\u662f\u6548\u679c\u592a\u5dee\u4e86\u3002\u6709\u6ca1\u6709\u670b\u53cb\u5904\u7406\u8fc7\u7c7b\u4f3c\u7684\u60c5\u51b5\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/c3de3f21", 
        "name": "c3de3f21", 
        "avatar": "https://cdn.v2ex.com/avatar/9a9b/6aad/621030_large.png?m=1766475540"
      }, 
      "url": "https://www.v2ex.com/t/1172052", 
      "date_modified": "2025-11-13T03:19:53+00:00", 
      "content_html": "<ul>\n<li><a href=\"https://lusion.co/\" rel=\"nofollow\">https://lusion.co/</a></li>\n<li>\u6211\u9700\u8981\u4f1a\u591a\u5c11\u4e1c\u897f\u624d\u80fd\u505a\u51fa\u8fd9\u79cd\u602a\u7269\u7f51\u7ad9\uff1f</li>\n</ul>\n", 
      "date_published": "2025-11-11T08:08:38+00:00", 
      "title": "Q: \u6211\u662f\u771f\u7684\u597d\u5947\uff0c\u8fd9\u7f51\u7ad9\uff08lusion\uff09\u662f\u600e\u4e48\u505a\u7684\uff0c\u90fd\u7528\u4e86\u4ec0\u4e48\u4e1c\u897f\uff1f", 
      "id": "https://www.v2ex.com/t/1172052"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Mslxl", 
        "name": "Mslxl", 
        "avatar": "https://cdn.v2ex.com/avatar/7951/024a/467364_large.png?m=1762521148"
      }, 
      "url": "https://www.v2ex.com/t/1171305", 
      "title": "\u5b66\u4e60\u7f51\u9875\u5bcc\u6587\u672c\u7f16\u8f91\u5668\u6709\u4ec0\u4e48\u6bd4\u8f83\u597d\u7684\u8d44\u6599\u5417", 
      "id": "https://www.v2ex.com/t/1171305", 
      "date_published": "2025-11-07T13:13:31+00:00", 
      "content_html": "\u6700\u8fd1\u60f3\u4ece\u96f6\u641e\u4e00\u4e2a\u5bcc\u6587\u672c\u7f16\u8f91\u5668\u73a9\u73a9\uff0c\u4e0d\u662f\u4e8c\u6b21\u5f00\u53d1\u3002\u5948\u4f55\u5bcc\u6587\u672c\u7f16\u8f91\u5668\u7684\u8d44\u6599\u592a\u5c11\uff0c\u53c8\u4e0d\u592a\u60f3\u53bb\u8bfb Quill \u7b49\u6210\u719f\u4f46\u4ee3\u7801\u91cf\u5de8\u5927\u7684\u7f16\u8f91\u5668\u4ee3\u7801\u3002\u5404\u4f4d\u5144\u5f1f\u6709\u6ca1\u6709\u5408\u9002\u7684\u5b66\u4e60\u8d44\u6599\u63a8\u8350"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/chenzhe", 
        "name": "chenzhe", 
        "avatar": "https://cdn.v2ex.com/avatar/df65/0e7a/578566_large.png?m=1742916676"
      }, 
      "url": "https://www.v2ex.com/t/1171233", 
      "date_modified": "2025-11-07T07:35:15+00:00", 
      "content_html": "<p>\u4e0d\u61c2\u5c31\u95ee\uff0c\u73b0\u5728\u5199\u5f88\u591a\u524d\u7aef\uff0c\u56fe\u7701\u4e8b\u513f\u548c\u4e60\u60ef\uff0c\u90fd\u662f\u7528 vite CLI \u6216\u8005 nextjs CLI \u76f4\u63a5\u521d\u59cb\u5316\u9879\u76ee\uff0c\u914d\u5408 tailwindcss \u548c\u57fa\u4e8e twcss \u7684 shadcn/ui(\u73b0\u5728 twcss \u90fd 4.0 \u4e86)\u76f4\u63a5\u5199 UI \u3002</p>\n<p>\u56e0\u4e3a\u4e00\u76f4\u4ee5\u6765\u90fd\u662f\u91ce\u8def\u5b50\u5199\uff0c\u6ca1\u6709\u53bb\u5b66\u8fc7\u57fa\u7840\u7684 Babel \u914d\u7f6e\u8fd9\u4e9b\u4e1c\u897f\u3002</p>\n<p>\u624b\u5934\u53ea\u6709 iPhone \uff0c\u6240\u4ee5\u6bcf\u6b21\u81ea\u5df1\u8fd9\u8fb9\u6d4b\u8bd5\u90fd\u5f88\u6b63\u5e38\uff0c\u6548\u679c\u4e5f\u633a\u597d\u7684\uff0c\u4f46\u662f\u771f\u7684\u653e\u5728\u597d\u591a\u56fd\u4ea7\u624b\u673a\u7684\u81ea\u5e26\u6d4f\u89c8\u5668\u4e0a\u5c31\u4f1a\u51fa\u73b0\u517c\u5bb9\u95ee\u9898\u3002\u7279\u522b\u662f\u7a0d\u8001\u7684\u4f4e\u7aef\u5b89\u5353\u624b\u673a\u7684\u81ea\u5e26\u6d4f\u89c8\u5668\u4e0a\u3002</p>\n<p>\u6709\u6ca1\u6709\u5927\u4f6c\u80fd\u89e3\u7b54\u4e0b\u8be5\u5982\u4f55\u914d\u7f6e\u53ef\u4ee5\u89e3\u51b3\u8fd9\u4e00\u95ee\u9898\uff0c\u6216\u8005\u6709\u76f8\u5173\u65b9\u5411\u7684\u8bfe\u7a0b\u3002</p>\n", 
      "date_published": "2025-11-07T07:34:59+00:00", 
      "title": "\u524d\u7aef\u6837\u5f0f\u517c\u5bb9\u6c42\u52a9", 
      "id": "https://www.v2ex.com/t/1171233"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Lexin914", 
        "name": "Lexin914", 
        "avatar": "https://cdn.v2ex.com/avatar/8e95/1303/720304_large.png?m=1746694605"
      }, 
      "url": "https://www.v2ex.com/t/1171047", 
      "date_modified": "2025-11-06T10:59:32+00:00", 
      "content_html": "<p>\u6211\u5728 Figma \u4e0a\u505a\u4e86\u4e00\u4e2a Make \u9879\u76ee\uff0c\u60f3\u7528 AI \u7f16\u8f91\u5668\u7167\u7740\u5b9e\u73b0\u4e00\u5957\u3002</p>\n<p>\u5df2\u7ecf\u5728 Trae \u7f16\u8f91\u5668 \u91cc\u88c5\u4e86 Figma-Context-MCP \u63d2\u4ef6\uff0c\u5bfc\u5165\u4e86 Make \u9879\u76ee\u7684\u94fe\u63a5\uff0c\u4f46\u8c03\u7528 get_figma_data \u63a5\u53e3\u4e00\u76f4\u62a5 400 \u9519\u8bef\u3002</p>\n<p>\u540e\u6765\u6211\u628a Make \u9879\u76ee\u8f6c\u6210 Design \u8bbe\u8ba1\u7a3f \u9879\u76ee\u518d\u8bd5\uff0c\u63a5\u53e3\u5012\u662f\u901a\u4e86\uff0c\u4f46\u62ff\u5230\u7684\u53ea\u6709\u7eaf UI \u4ee3\u7801\uff0c\u6ca1\u6709\u4ea4\u4e92\u903b\u8f91(\u56e0\u4e3a design \u9879\u76ee\u7eaf\u9759\u6001)\u3002</p>\n<p>\u6709\u70b9\u56f0\u60d1\u7684\u662f\uff0cFigma Make \u9879\u76ee\u660e\u660e\u652f\u6301\u201c\u4ee3\u7801\u9884\u89c8\u201d\uff0c\u6309\u7406\u8bf4\u5e94\u8be5\u80fd\u62ff\u5230\u4ea4\u4e92\u76f8\u5173\u7684\u4ee3\u7801\u624d\u5bf9\uff1f</p>\n<p>\u6709\u6ca1\u6709\u670b\u53cb\u9047\u5230\u8fc7\u7c7b\u4f3c\u7684\u95ee\u9898\uff1f\u6216\u8005\u77e5\u9053\u600e\u4e48\u901a\u8fc7 MCP \u6216\u5176\u4ed6\u63a5\u53e3\u8bfb\u53d6 Make \u9879\u76ee\u7684\u4ea4\u4e92\u903b\u8f91\uff1f</p>\n", 
      "date_published": "2025-11-06T10:59:05+00:00", 
      "title": "\u6c42\u52a9\uff1a Figma Make \u9879\u76ee\u7684\u4ea4\u4e92\u4ee3\u7801\u5982\u4f55\u8ba9 ai \u7f16\u8f91\u5668\u8bfb\u53d6\u5230\uff1f", 
      "id": "https://www.v2ex.com/t/1171047"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/x007xyzabc", 
        "name": "x007xyzabc", 
        "avatar": "https://cdn.v2ex.com/gravatar/28f199d3548ea2c5530190ec40c7bdee?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1170876", 
      "title": "\u56f0\u60d1\uff0c\u7f51\u7ad9\u957f\u671f GSC \u4e0d\u88ab\u6536\u5f55\uff0c\u8c01\u80fd\u5e2e\u5e2e\u6211", 
      "id": "https://www.v2ex.com/t/1170876", 
      "date_published": "2025-11-06T02:16:19+00:00", 
      "content_html": "<a target=\"_blank\" href=\"https://i.imgur.com/GLWeQYM.png\" rel=\"nofollow noopener\" target=\"_blank\"><img src=\"https://i.imgur.com/GLWeQYM.png\" class=\"embedded_image\" rel=\"noreferrer\"></a><br /><br />\u5f88\u5947\u602a\uff0c\u4e4b\u524d\u8fd8\u88ab\u6536\u5f55\u8fc7\uff0c\u66f4\u65b0\u8fc7\u4e00\u6b21\u4e4b\u540e\u4e00\u76f4\u4e0d\u88ab\u6536\u5f55<br /><br />\u5730\u5740\uff1a <a target=\"_blank\" href=\"https://caption.flycut.co/en\" rel=\"nofollow noopener\">https://caption.flycut.co/en</a><br />sitemap: <a target=\"_blank\" href=\"https://caption.flycut.co/sitemap.xml\" rel=\"nofollow noopener\">https://caption.flycut.co/sitemap.xml</a><br />robots: <a target=\"_blank\" href=\"https://caption.flycut.co/robots.txt\" rel=\"nofollow noopener\">https://caption.flycut.co/robots.txt</a><br /><br />\u611f\u89c9\u6ca1\u6709\u4ec0\u4e48\u5f02\u5e38\u7684"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/xption", 
        "name": "xption", 
        "avatar": "https://cdn.v2ex.com/avatar/2f19/ff96/562605_large.png?m=1768377283"
      }, 
      "url": "https://www.v2ex.com/t/1170533", 
      "title": "\u4e3a\u4e86\u4e0d\u8bef\u5bfc\u522b\u4eba\uff0c\u6211\u51b3\u5b9a\u8fd8\u662f\u53d1\u8d34\u8bf4\u660e\u4e0b", 
      "id": "https://www.v2ex.com/t/1170533", 
      "date_published": "2025-11-04T15:07:09+00:00", 
      "content_html": "<p>\u4e24\u5e74\u524d\uff0c\u4e3a\u4e86\u5f00\u53d1\u81ea\u5df1\u7684\u6295\u8d44\u5de5\u5177\u7f51\u7ad9\uff0c\u51b3\u5b9a\u5b66\u4e00\u4e0b\u524d\u7aef\u3002</p>\n<p>\u5f53\u65f6\u6574\u7406\u4e86\u5b66\u4e60\u8def\u5f84\u548c\u8d44\u6599\uff0c\u53d1\u4e86\u4e24\u7bc7\u5e16\u5b50\uff1a</p>\n<ul>\n<li><a href=\"https://v2ex.com/t/980505\" rel=\"nofollow\">2023 \u5e74\u7684 web \u524d\u7aef\uff0c\u8be5\u5982\u4f55\u5b66\u8d77\uff1f</a></li>\n<li><a href=\"https://v2ex.com/t/980954\" rel=\"nofollow\">Web \u524d\u7aef\u5b66\u4e60\u8def\u5f84\u53ca\u8d44\u6599\u6c47\u603b [2023 \u5e74]</a></li>\n</ul>\n<p>\u83b7\u5f97\u4e0a\u4e07\u6d4f\u89c8\u3001\u4e0a\u767e\u6536\u85cf</p>\n<p>\u4f46\u5176\u5b9e\uff0c\u8fd9\u4e24\u5e74\u6211\u81ea\u5df1\u5e76\u6ca1\u6709\u6309\u7167\u8fd9\u4e2a\u8def\u5f84\u5b66\u4e60\uff0c\u4e24\u70b9\u539f\u56e0\uff1a</p>\n<ul>\n<li>\u6211\u4e0d\u9700\u8981\u6210\u4e3a\u524d\u7aef\u5f00\u53d1\u4e13\u804c\u4eba\u5458</li>\n<li>AI \u7684\u6a2a\u7a7a\u51fa\u73b0</li>\n</ul>\n<p>\u4e00\u5f00\u59cb\uff0c\u6211\u4f7f\u7528\u57fa\u4e8e vue + element ui \u7684\u5f00\u6e90\u6846\u67b6\uff0c\u5373\u4f7f\u4e0d\u61c2 css \u7684\u7ec6\u8282\u4e5f\u80fd\u5f00\u53d1\u3002</p>\n<p>\u540e\u6765\uff0c\u89c9\u5f97\u4f7f\u7528\u5f00\u6e90\u6846\u67b6\u4e0d\u65b9\u4fbf\uff0c\u51b3\u5b9a\u81ea\u5df1\u4ece\u5934\u5199\uff0c\u8fd9\u65f6 AI \u7f16\u7a0b\u5f88\u65b9\u4fbf\u4e86\uff0c\u4e5f\u4e0d\u9700\u8981\u52a8 css \u7684\u7ec6\u8282\uff0c\u80fd\u770b\u61c2 AI \u751f\u6210\u7684\u4ee3\u7801\u5373\u53ef\u3002</p>\n<p>\u6240\u4ee5\uff0c\u8fd9\u4e24\u7bc7\u6587\u7ae0\u5206\u4eab\u7684\u5b66\u4e60\u8def\u5f84\u53ef\u80fd\u5e76\u4e0d\u9002\u5408\u6240\u6709\u4eba\uff0c\u5c24\u5176\u662f\u53ea\u60f3\u5f00\u53d1\u4e00\u4e2a\u7f51\u7ad9\uff0c\u4f46\u5e76\u4e0d\u50cf\u4ee5\u524d\u7aef\u5f00\u53d1\u4e3a\u4e3b\u4e1a\u7684\u4eba\u3002</p>\n<p>\u611f\u8c22 AI \uff0c\u786e\u5b9e\u63d0\u9ad8\u4e86\u6548\u7387\uff0c\u53ef\u4ee5\u5c06\u66f4\u591a\u7684\u7cbe\u529b\u653e\u5728\u4e1a\u52a1\u5c42\u9762\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/joyanhui", 
        "name": "joyanhui", 
        "avatar": "https://cdn.v2ex.com/gravatar/7b99ebbc66f778639ccbfba19ea4ed66?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1170393", 
      "title": "\u6700\u9069\u5408 ai \u7684\u524d\u7aef\u6280\u8853\u9078\u64c7 \u6709\u5efa\u8b70\u55ce\uff1f", 
      "id": "https://www.v2ex.com/t/1170393", 
      "date_published": "2025-11-04T03:54:47+00:00", 
      "content_html": "<p>\u5bf9\u73b0\u5728\u5bf9\u524d\u7aef\u4e0d\u592a\u7406\u89e3\uff0c\u6c34\u5e73\u4e00\u822c\uff0c\u4e0a\u53e4 jq \u73a9\u5bb6\u3002\u4f46\u662f\u6703 flutter uniapp </p>\n<p>\u4e5f\u6703\u4e00\u4e1f vue  react</p>\n<p>\u4f46\u662f\u6211\u5bf9 npm nodejs \u8fd9\u4e9b\u4e1c\u897f \u8fd8\u662f\u5f88\u61f5\uff0c\u7ecf\u5e38\u5c31\u83ab\u540d\u5176\u5999\u5c31\u5404\u79cd\u9519\u8bef\u3002\u7cbe\u529b\u548c\u80fd\u529b\u90fd\u4e0d\u591f\uff0c\u4e0d\u60f3\u6df1\u5165\u5b66\u73b0\u5728\u5bf9\u524d\u7aef\u3002</p>\n<p>\u6240\u4ee5\u8003\u8651\u5e72\u8106 \u539f\u751f html+taiwindcss+alpine.js \u662f\u5426\u53ef\u884c</p>\n<p>\u76ee\u524d solo \u524d\u7aef\u5927\u91cf\u4f9d\u8d56 ai \uff0c\u5c11\u91cf\u624b\u52a8\u8c03\u6574\u3002</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/forsky", 
        "name": "forsky", 
        "avatar": "https://cdn.v2ex.com/avatar/8e19/cf03/285020_large.png?m=1579233169"
      }, 
      "url": "https://www.v2ex.com/t/1170193", 
      "date_modified": "2025-11-04T00:46:47+00:00", 
      "content_html": "<p>\u5982\u4f55\u754c\u5b9a\u524d\u7aef\u548c\u540e\u53f0\u7684\u5de5\u4f5c\u804c\u8d23\uff0c\u8bf4\u4e0d\u6e05\u695a\uff0c\u7ed9\u4e2a\u4f8b\u5b50\u5427\u3002</p>\n<ul>\n<li>MVC \u67b6\u6784\uff0c\u540e\u53f0\u4fe1\u606f\u8fd4\u56de\u5230 html \u9875\u9762\u540e\uff0c\u524d\u7aef\u53ea\u7ed9 html \u6587\u4ef6\u3002html \u9875\u9762\u91cc\u6211\u8fd8\u8981\u628a\u53d8\u91cf\uff0c\u5faa\u73af\u5199\u5230\u91cc\u9762\u3002 \u6bcf\u6b21\u627e\u524d\u7aef\u6765\u8bf4\uff0c\u90fd\u662f\u53ea\u7ed9\u8fd9\u4e9b,\u5076\u5c14\u9119\u89c6\u4ee5\u4e0b\u540e\u7aef\u6ca1\u6c34\u5e73\u3002 \u611f\u89c9\u524d\u7aef\u5f88\u5bb9\u6613\u505a\uff0c\u53ea\u662f\u4e2a html \u9875\u9762\uff0c\u4e5f\u6ca1\u6709\u4ec0\u4e48\u7279\u6548\u3002\u6211\u81ea\u5df1\u6765\u4e0d\u5c31\u884c\u4e86\uff1f \u771f\u7684\u4e0d\u9002\u5f88\u6e05\u695a\u524d\u7aef\u90fd\u662f\u54ea\u4e9b\u5de5\u4f5c\u804c\u8d23\uff0c\u6709\u670b\u53cb\u5206\u4eab\u5417\uff1f</li>\n<li>\u5f53\u7136\uff0c\u73b0\u5728\u66f4\u591a\u7684\u90fd\u662f\u505a\u5168\u6808\u5f00\u53d1\u3002</li>\n</ul>\n", 
      "date_published": "2025-11-03T06:51:56+00:00", 
      "title": "\u5982\u4f55\u754c\u5b9a\u524d\u7aef\u548c\u540e\u53f0\u7684\u5de5\u4f5c\u804c\u8d23\u3002", 
      "id": "https://www.v2ex.com/t/1170193"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/wdssmq", 
        "name": "wdssmq", 
        "avatar": "https://cdn.v2ex.com/avatar/6632/34db/85366_large.png?m=1638374341"
      }, 
      "url": "https://www.v2ex.com/t/1169240", 
      "title": "rslib \u6709\u6ca1\u6709\u7c7b\u4f3c rollup-plugin-serve \u7684\u63d2\u4ef6\u3002\u3002", 
      "id": "https://www.v2ex.com/t/1169240", 
      "date_published": "2025-10-29T11:50:14+00:00", 
      "content_html": "<p>\u7528\u6765\u6d4b\u8bd5\u7f51\u9875\u7528\u7684 lib</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/jefferyH", 
        "name": "jefferyH", 
        "avatar": "https://cdn.v2ex.com/avatar/6af2/a04f/599911_large.png?m=1728723528"
      }, 
      "url": "https://www.v2ex.com/t/1166795", 
      "date_modified": "2025-10-19T11:28:55+00:00", 
      "content_html": "<p>\u6211\u76ee\u524d\u6709\u4e00\u4e2a\u7528 <strong>uni-app</strong> \u5f00\u53d1\u7684 H5 \u9879\u76ee\uff0c\u529f\u80fd\u57fa\u672c\u90fd\u8dd1\u5728\u6d4f\u89c8\u5668\u7aef\uff0c\u5f88\u591a\u903b\u8f91\u548c\u7ec4\u4ef6\u4e5f\u662f\u6309 H5 \u5199\u7684\u3002\n\u73b0\u5728\u65b0\u9700\u6c42\u6765\u4e86\uff0c\u60f3\u628a\u8fd9\u4e2a\u9879\u76ee <strong>\u590d\u7528\u5230\u5fae\u4fe1\u5c0f\u7a0b\u5e8f</strong> \u7b49\u591a\u7aef\uff0c\u4f46\u8fd9\u65f6\u5019\u95ee\u9898\u5c31\u51fa\u6765\u4e86\uff1a</p>\n<ul>\n<li>\u4e4b\u524d\u7684\u5199\u6cd5\u4e0d\u592a\u517c\u5bb9\u5c0f\u7a0b\u5e8f\uff0c\u5f88\u591a H5 \u7684\u7279\u6027\u5728\u5c0f\u7a0b\u5e8f\u7aef\u76f4\u63a5\u8dd1\u4e0d\u8d77\u6765\uff1b</li>\n<li>\u540e\u7eed\u53ef\u80fd\u4f1a\u57fa\u4e8e\u8fd9\u4e2a\u9879\u76ee\u505a\u591a\u4e2a\u7248\u672c\uff08\u6bd4\u5982\u4e0d\u540c\u5ba2\u6237 / \u573a\u666f\uff09\uff0c\u8fd9\u4e9b\u9879\u76ee\u7684 UI \u548c\u4e1a\u52a1\u903b\u8f91\u6709\u4e0d\u5c11\u5171\u7528\u7684\u90e8\u5206\uff1b</li>\n<li>\u6211\u5e0c\u671b\u6709\u4e00\u5957\u516c\u5171\u7684 <strong>UI \u7ec4\u4ef6\u5e93</strong> \u548c <strong>\u4e1a\u52a1\u6a21\u5757</strong> \u7531\u4e13\u95e8\u56e2\u961f\u7edf\u4e00\u7ef4\u62a4\uff0c\u5176\u4ed6\u9879\u76ee\u53ea\u5173\u6ce8\u81ea\u5df1\u7684\u5dee\u5f02\u5316\u90e8\u5206\uff1b</li>\n<li>\u7406\u60f3\u7684\u72b6\u6001\u662f\uff0c\u4e00\u4e2a\u9879\u76ee A \u5f00\u53d1\u7684\u529f\u80fd\uff0c\u9879\u76ee B \u80fd\u5feb\u901f\u590d\u7528\uff1b\u65b0\u9879\u76ee\u4e5f\u80fd\u901a\u8fc7\u811a\u624b\u67b6\u4e00\u952e\u521d\u59cb\u5316\uff0c\u51cf\u5c11\u91cd\u590d\u5de5\u4f5c\u3002</li>\n</ul>\n<p>\u7b80\u5355\u8bf4\uff0c\u5c31\u662f\u5e0c\u671b\u628a\u73b0\u5728\u8fd9\u4e2a H5 \u9879\u76ee\uff0c<strong>\u5347\u7ea7\u6210\u4e00\u5957\u652f\u6301\u591a\u7aef\u3001\u652f\u6301\u591a\u9879\u76ee\u590d\u7528\u3001\u516c\u5171\u5e93\u96c6\u4e2d\u7ef4\u62a4\u3001\u4e1a\u52a1\u9879\u76ee\u5dee\u5f02\u5316\u5f00\u53d1\u7684\u67b6\u6784\u4f53\u7cfb</strong>\u3002\n\u5e0c\u671b\u7ed9\u6211\u5927\u4f6c\u7ed9\u4e2a\u5efa\u8bae\u7ed9\u70b9\u7ecf\u9a8c</p>\n", 
      "date_published": "2025-10-19T11:28:39+00:00", 
      "title": "uni-app H5 \u9879\u76ee\u60f3\u590d\u7528\u5230\u5fae\u4fe1\u5c0f\u7a0b\u5e8f\uff0c\u591a\u7aef\u9002\u914d\u4e0e\u591a\u9879\u76ee\u590d\u7528\u600e\u4e48\u8bbe\u8ba1\uff1f", 
      "id": "https://www.v2ex.com/t/1166795"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/KurosakiRei", 
        "name": "KurosakiRei", 
        "avatar": "https://cdn.v2ex.com/gravatar/fdd517291f38889493fc3ad8f4165c02?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1166267", 
      "title": "\u5173\u4e8e AI \u52a9\u529b\u811a\u672c(Userscript)\u5f00\u53d1", 
      "id": "https://www.v2ex.com/t/1166267", 
      "date_published": "2025-10-16T17:48:24+00:00", 
      "content_html": "<p>\u5e73\u5e38\u7528\u7684\u7f16\u8f91\u5668\u662f VS code \uff0c\u5982\u679c\u8981\u5f00\u53d1 userscript \uff0c\u4e00\u822c\u4f1a\u7528\u4e0a\u81ea\u5df1\u9b54\u6539\u7684\u6a21\u677f ( <a href=\"https://github.com/KurosakiRei/webpack-userscript-template-with-vue3)%EF%BC%8C%E7%94%A8%E8%BF%99%E4%B8%AA%E6%A8%A1%E6%9D%BF%E6%98%AF%E5%9B%A0%E4%B8%BA%E8%BF%99%E4%B8%AA%E5%8E%9F%E7%89%88%E7%9A%84%E6%A8%A1%E6%9D%BF%E5%B0%B1%E5%B7%B2%E7%BB%8F%E5%8F%AF%E4%BB%A5%E5%AE%9E%E7%8E%B0%EF%BC%8C%E6%9C%AC%E5%9C%B0%E4%BF%AE%E6%94%B9%E8%84%9A%E6%9C%AC%E5%AE%9E%E6%97%B6%E5%90%8C%E6%AD%A5%E5%88%B0%E6%B5%8F%E8%A7%88%E5%99%A8%E7%9A%84\" rel=\"nofollow\">https://github.com/KurosakiRei/webpack-userscript-template-with-vue3)\uff0c\u7528\u8fd9\u4e2a\u6a21\u677f\u662f\u56e0\u4e3a\u8fd9\u4e2a\u539f\u7248\u7684\u6a21\u677f\u5c31\u5df2\u7ecf\u53ef\u4ee5\u5b9e\u73b0\uff0c\u672c\u5730\u4fee\u6539\u811a\u672c\u5b9e\u65f6\u540c\u6b65\u5230\u6d4f\u89c8\u5668\u7684</a> tamper monkey \u4e0a\u8fdb\u884c\u6d4b\u8bd5\u3002</p>\n<p>\u7531\u4e8e\u73b0\u5728 AI \u7f16\u7a0b\u76db\u884c\uff0c\u6240\u4ee5\u6211\u73b0\u5728\u6211\u5927\u90e8\u5206\u7f16\u7a0b\u9700\u6c42\u90fd\u662f\u8ba9 AI \u5b8c\u6210\u3002\u4f46\u662f AI \u7f16\u7a0b\u63d0\u4f9b\u7684\u65b9\u4fbf\u5176\u5b9e\u66f4\u503e\u5411\u4e8e\u90a3\u4e9b\u4ece 0 \u5f00\u59cb\u5f00\u53d1\u7684\u9879\u76ee\uff0c\u53c8\u6216\u8005\u8bf4\u662f\u53ef\u4ee5\u672c\u5730\u8fd0\u884c\u8c03\u8bd5\u6d4b\u8bd5\u7684\u9879\u76ee\uff0c\u4f46\u662f\u5bf9\u4e8e userscript \u7684\u5f00\u53d1\uff0c\u5982\u679c\u6709\u4efb\u4f55 bug \uff0c\u90fd\u9700\u8981\u81ea\u5df1\u624b\u52a8\u5230\u6d4f\u89c8\u5668\u7684\u5f00\u53d1\u8005\u5de5\u5177\u5bfb\u627e\u9519\u8bef\u8fdb\u884c\u8c03\u8bd5\uff0c\u518d\u628a\u53d1\u73b0\u544a\u8bc9 AI, \u8fd9\u65e0\u7591\u589e\u52a0\u4e86\u5f00\u53d1\u96be\u5ea6\uff0c\u5c31\u7b97\u662f\u7528 AI \u3002</p>\n<p>\u6240\u4ee5\u6211\u60f3\u95ee\u4e00\u4e0b\u5927\u4f6c\u4eec\uff0c\u6709\u6ca1\u6709\u4ec0\u4e48\u597d\u7528\u7684 AI \u52a9\u529b\u5f00\u53d1\u811a\u672c\u4f46\u662f\u53ef\u4ee5\u8ba9 AI \u81ea\u5df1\u8c03\u8bd5\u5176\u9519\u8bef\u7684\u65b9\u6cd5\uff1f\u53c8\u6216\u8005\u8bf4\u662f\u4e00\u5957\u6bd4\u6211\u8fd9\u4e00\u5957\u8fc7\u65f6\u7684\u5de5\u4f5c\u6d41\uff0c\u66f4\u597d\u7684\u5de5\u4f5c\u6d41\uff1f</p>\n<p>\u4e0d\u77e5\u9053\u6709\u6ca1\u6709\u63cf\u8ff0\u6e05\u695a\u95ee\u9898\uff0c\u6587\u7b14\u4e00\u822c\uff0c\u8bf7\u89c1\u8c05</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/shintendo", 
        "name": "shintendo", 
        "avatar": "https://cdn.v2ex.com/avatar/8627/ca70/274063_large.png?m=1762849953"
      }, 
      "url": "https://www.v2ex.com/t/1165089", 
      "title": "\u4e16\u754c\u89c2\u5d29\u584c\u4e86\uff0c\u5341\u5e74\u8001\u524d\u7aef\u4eca\u5929\u7a81\u7136\u53d1\u73b0 CSS \u91cc\u7684 green \u4e0d\u662f\u7eaf\u7eff", 
      "id": "https://www.v2ex.com/t/1165089", 
      "date_published": "2025-10-14T03:41:16+00:00", 
      "content_html": "red \u662f FF0000<br />blue \u662f 0000FF<br />\u4f46 green \u4e0d\u662f 00FF00 \u800c\u662f 008000"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/jaminq", 
        "name": "jaminq", 
        "avatar": "https://cdn.v2ex.com/gravatar/bf4bd27f4a66e540316c34a21a7f9315?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1164112", 
      "date_modified": "2025-10-10T02:56:58+00:00", 
      "content_html": "<p>tahoe \u5347\u7ea7\u4ee5\u6765\uff0csafari \u53bb\u6389\u4e86 compact tab \u6a21\u5f0f\u7684\u80cc\u666f\uff0c\u539f\u6765 &lt;meta&gt; \u7684 <code>theme-color</code> \u5728 macos \u4e0a\u4e5f\u4e0d\u518d\u751f\u6548\u3002</p>\n<p>\u53c2\u8003\u7f51\u4e0a\u6ca1\u6709\u627e\u5230\u4efb\u4f55\u6709\u7528\u7684\u4fe1\u606f\uff0c\u4e0d\u8bba\u662f reddit \u8fd8\u662f AI \u7ed9\u7684\u7b54\u590d\u90fd\u662f\u76f4\u63a5\u4fee\u6539 body \u7684\u80cc\u666f\u8272\uff0c\u4f46\u662f\u6211\u53d1\u7ebf\u4e00\u4e9b\u7f51\u7ad9\uff08\u4f8b\u5982[<a href=\"http://ea.com\" rel=\"nofollow\">ea.com</a>](EA \u5b98\u7f51)\uff09\u5c31\u5b8c\u5168\u6ca1\u6709\u4f7f\u7528 <code>body</code> \u7684\u80cc\u666f\u8272\uff0c\u4e8e\u662f\u6211\u5c1d\u8bd5\u4e86\u4e0b\uff0c\u627e\u5230\u4e86\u8ba9 safari 26 \u8bc6\u522b\u80cc\u666f\u8272\u7684\u6700\u5c0f\u914d\u7f6e\u3002</p>\n<p>html \u4ee3\u7801\u5982\u4e0b</p>\n<pre><code class=\"language-html\">&lt;html&gt;\n\n&lt;head&gt;\n    &lt;style&gt;\n        div {\n            min-height: 6px;\n            position: fixed;\n            top: 0;\n            width: 80%;\n        }\n    &lt;/style&gt;\n&lt;/head&gt;\n\n&lt;body style=\"background-color: beige;\"&gt;\n    &lt;div style=\"background-color: darkgrey;\"&gt;&lt;/div&gt;\n&lt;/body&gt;\n\n&lt;/html&gt;\n\n</code></pre>\n<p>\u5176\u4e2d <code>height</code> \u6700\u5c0f <code>6px</code>\uff0c<code>width</code> \u6700\u5c0f <code>80%</code>\uff0c<code>position</code>\u548c<code>top</code>\u5fc5\u4e0d\u53ef\u5c11\uff0c\u66f4\u65b0\u4e8e safari26.0.1 \uff0c\u540e\u7eed\u82f9\u679c\u66f4\u65b0\u6b64\u65b9\u6cd5\u53ef\u80fd\u5931\u6548\u3002</p>\n<blockquote>\n<p>BTW, \u5173\u6389\u5728 safari \u914d\u7f6e\u4e2d tab \u7684 <code>Show color in tab bar</code> \u53ef\u4ee5\u5173\u6389\u6539\u529f\u80fd\u3002</p>\n</blockquote>\n", 
      "date_published": "2025-10-10T02:56:36+00:00", 
      "title": "\u6211\u7ec8\u4e8e\u627e\u5230\u4e86 safari26 \u5de5\u5177\u680f\u80cc\u666f\u8272\u7684\u8bc6\u522b\u65b9\u6cd5", 
      "id": "https://www.v2ex.com/t/1164112"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Gitborlando", 
        "name": "Gitborlando", 
        "avatar": "https://cdn.v2ex.com/gravatar/9a67e99da8776a97d542b37516fdbca0?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1162681", 
      "title": "LeetCode \u7684\u4e00\u4e2a\u7b97\u6cd5\u5e2e\u6211\u89e3\u51b3\u4e86\u5de5\u4f5c\u68d8\u624b\u95ee\u9898", 
      "id": "https://www.v2ex.com/t/1162681", 
      "date_published": "2025-09-29T08:34:14+00:00", 
      "content_html": "<p>\u8d77\u56e0\u662f\u8fd9\u6837\u7684, \u6211\u5de5\u4f5c\u4e2d\u78b0\u5230\u4e86\u4e00\u4e2a\u95ee\u9898, \u5141\u8bb8\u6211\u7528\u4e00\u5f20\u56fe\u6765\u8868\u8fbe\u8fd9\u4e2a\u95ee\u9898\u662f\u4ec0\u4e48, \u6211\u6240\u7ef4\u62a4\u7684\u4e00\u4e2a\u56fe\u7247\u7f16\u8f91\u5668\u6709\u8fd9\u4e48\u4e00\u4e2a\u529f\u80fd, \u5c31\u662f\u6211\u7684\u7f16\u8f91\u5668\u63d0\u4f9b\u4e00\u4e9b\u6a21\u677f, \u7136\u540e\u7528\u6237\u4f1a\u4e0a\u4f20\u56fe\u7247, \u6211\u9700\u8981\u628a\u7528\u6237\u7684\u56fe\u7247...</p>\n<p>\u94fe\u63a5 :<a href=\"https://blog.gitborlando.com/LeetCode%E7%9A%84%E4%B8%80%E4%B8%AA%E7%AE%97%E6%B3%95%E5%B8%AE%E6%88%91%E8%A7%A3%E5%86%B3%E4%BA%86%E5%B7%A5%E4%BD%9C%E6%A3%98%E6%89%8B%E9%97%AE%E9%A2%98/LeetCode%E7%9A%84%E4%B8%80%E4%B8%AA%E7%AE%97%E6%B3%95%E5%B8%AE%E6%88%91%E8%A7%A3%E5%86%B3%E4%BA%86%E5%B7%A5%E4%BD%9C%E6%A3%98%E6%89%8B%E9%97%AE%E9%A2%98\" rel=\"nofollow\">https://blog.gitborlando.com/LeetCode%E7%9A%84%E4%B8%80%E4%B8%AA%E7%AE%97%E6%B3%95%E5%B8%AE%E6%88%91%E8%A7%A3%E5%86%B3%E4%BA%86%E5%B7%A5%E4%BD%9C%E6%A3%98%E6%89%8B%E9%97%AE%E9%A2%98/LeetCode%E7%9A%84%E4%B8%80%E4%B8%AA%E7%AE%97%E6%B3%95%E5%B8%AE%E6%88%91%E8%A7%A3%E5%86%B3%E4%BA%86%E5%B7%A5%E4%BD%9C%E6%A3%98%E6%89%8B%E9%97%AE%E9%A2%98</a></p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Justineo", 
        "name": "Justineo", 
        "avatar": "https://cdn.v2ex.com/avatar/69c1/7c8f/50622_large.png?m=1759131942"
      }, 
      "url": "https://www.v2ex.com/t/1162669", 
      "date_modified": "2025-09-29T07:56:44+00:00", 
      "content_html": "<p>\u8ddd\u79bb Vue ECharts \u7684\u4e0a\u4e00\u6b21\u5927\u7248\u672c\u53d1\u5e03\u5df2\u7ecf\u4e00\u5e74\u591a\u4e86\uff0c\u8fd9\u4e00\u6b21\u501f\u7740 ECharts 6 \u6b63\u5f0f\u53d1\u5e03\u7684\u5951\u673a\uff0c\u6211\u4eec\u4e5f\u987a\u52bf\u53d1\u5e03\u4e86 Vue ECharts \u7684 8.0 \u7248\u672c\u3002\u5b83\u4e0d\u4ec5\u63d0\u4f9b\u4e86\u65b0\u7248\u672c\u7684 ECharts \u7684\u652f\u6301\uff0c\u540c\u65f6\u4e5f\u5728\u529f\u80fd\u3001\u5f00\u53d1\u4f53\u9a8c\u4e0a\u52a0\u5165\u4e86\u5168\u65b0\u529f\u80fd\uff0c\u5e76\u4e14\u5bf9\u5de5\u7a0b\u94fe\u8def\u505a\u4e86\u5168\u9762\u73b0\u4ee3\u5316\u91cd\u6784\u3002</p>\n<p>\u5b98\u7f51\uff1a<a href=\"https://vue-echarts.dev\" rel=\"nofollow\">https://vue-echarts.dev</a></p>\n<p>GitHub\uff1a<a href=\"https://github.com/ecomfe/vue-echarts\" rel=\"nofollow\">https://github.com/ecomfe/vue-echarts</a></p>\n<h3>ECharts 6 \u652f\u6301</h3>\n<p>ECharts 6 \u5e26\u6765\u4e86\u5168\u65b0\u7684\u4e3b\u9898\u3001\u65b0\u7684\u7cfb\u5217\u548c\u5e03\u5c40\u673a\u5236\uff0c\u662f\u5b98\u65b9\u8fd1\u5e74\u6765\u6700\u91cd\u8981\u7684\u4e00\u6b21\u66f4\u65b0\u3002\u6211\u4eec\u4e3a Vue ECharts \u9002\u914d\u4e86 ECharts 6 \u7684\u65b0\u529f\u80fd\uff0c\u5e76\u4e14\u5c06\u4f9d\u8d56\u7684 ECharts \u7248\u672c\u4e5f\u66f4\u65b0\u4e3a\u4e86 6.0.0 \u4ee5\u4e0a\u3002\u60f3\u4e86\u89e3 ECharts 6 \u7684\u5177\u4f53\u7279\u6027\uff0c\u5efa\u8bae\u76f4\u63a5\u9605\u8bfb\u5b98\u65b9\u7684<a href=\"https://echarts.apache.org/handbook/zh/basics/release-note/v6-feature/\" rel=\"nofollow\">\u65b0\u7248\u529f\u80fd\u4ecb\u7ecd</a>\uff0c\u5728\u6b64\u4e0d\u518d\u8d58\u8ff0\u3002</p>\n<h3>\u505c\u6b62\u652f\u6301 Vue 2</h3>\n<p>\u6211\u4eec\u5728\u652f\u6301 ECharts 6 \u7684\u540c\u65f6\uff0c\u9009\u62e9\u540c\u6b65\u653e\u5f03 Vue 2 \u652f\u6301\u3002Vue 2 \u5df2\u7ecf\u5728 2023 \u5e74\u5e95<a href=\"https://v2.cn.vuejs.org/eol/\" rel=\"nofollow\">\u5230\u8fbe\u7ec8\u6b62\u652f\u6301\u65f6\u95f4</a>\uff0c\u5728 Vue ECharts 8.0 \u653e\u5f03 Vue 2 \u53ef\u4ee5\u8ba9\u6211\u4eec\u79fb\u9664\u5bf9 vue-demi \u7684\u4f9d\u8d56\u3001\u63d0\u4f9b\u66f4\u4e00\u81f4\u7684\u7c7b\u578b\u5e76\u4e14\u7b80\u5316\u6253\u5305\u6d41\u7a0b\uff0c\u4ece\u800c\u63d0\u9ad8\u5e93\u7684\u7a33\u5b9a\u6027\u548c\u53ef\u7ef4\u62a4\u6027\u3002\u5982\u679c\u4f60\u4f9d\u7136\u8981\u5728 Vue 2 \u9879\u76ee\u4e2d\u4f7f\u7528\uff0c\u8bf7\u7ee7\u7eed\u4f7f\u7528 Vue ECharts 7 \u3002</p>\n<h3>tooltip \u548c dataView \u63d2\u69fd\u652f\u6301</h3>\n<p>\u5728 ECharts \u4e2d\uff0c\u81ea\u5b9a\u4e49 <code>tooltip</code> \u5185\u5bb9\u9700\u8981\u7f16\u5199 <code>formatter(params)</code> \u8fd4\u56de HTML \u5b57\u7b26\u4e32\u6216 DOM \u8282\u70b9\uff0c\u81ea\u5b9a\u4e49\u6570\u636e\u89c6\u56fe\u5219\u8981\u5728 <code>option.toolbox.feature.dataView.optionToContent(opt)</code> \u4e2d\u505a\u7c7b\u4f3c\u5904\u7406 \u3002\u8fd9\u4e00\u6a21\u5f0f\u65e2\u4e0d\u6613\u590d\u7528\uff0c\u4e5f\u96be\u4ee5\u4e0e Vue \u7684\u58f0\u660e\u5f0f\u6e32\u67d3\u76f8\u7ed3\u5408\u3002Vue ECharts 8.0 \u4e3a\u8fd9\u4e24\u4e2a\u529f\u80fd\u5f15\u5165\u4e86\u63d2\u69fd API \uff0c\u5c06\u8fd9\u4e9b\u56de\u8c03\u6620\u5c04\u4e3a\u6a21\u677f\u63d2\u69fd\u3002\u4f60\u53ef\u4ee5\u5728\u7ec4\u4ef6\u5185\u5199\uff1a</p>\n<pre><code class=\"language-html\">&lt;VChart :option=\"option\"&gt;\n  &lt;template #tooltip=\"p\"&gt;\n    &lt;div class=\"tooltip\"&gt;\n      &lt;span v-html=\"p.marker\" /&gt;\n      &lt;strong&gt;{{ p.seriesName }}&lt;/strong&gt;&lt;br/&gt;\n      {{ formatDate(p.name) }}: {{ formatNumber(p.value) }}\n      &lt;HolidayBadge v-if=\"isHoliday(p.name)\" /&gt;\n    &lt;/div&gt;\n  &lt;/template&gt;\n  &lt;template #dataView=\"opt\"&gt;\n    &lt;table&gt;\n      &lt;tbody&gt;\n        &lt;tr v-for=\"(v, i) in opt.series?.[0]?.data ?? []\" :key=\"i\"&gt;\n          &lt;td&gt;{{ opt.xAxis?.[0]?.data?.[i] ?? i }}&lt;/td&gt;\n          &lt;td&gt;{{ v }}&lt;/td&gt;\n        &lt;/tr&gt;\n      &lt;/tbody&gt;\n    &lt;/table&gt;\n  &lt;/template&gt;\n&lt;/VChart&gt;\n</code></pre>\n<p>\u8fd9\u6837\uff0c\u4f60\u5c31\u53ef\u4ee5\u76f4\u63a5\u5728 Vue \u6a21\u677f\u4e2d\u4f7f\u7528\u8ba1\u7b97\u5c5e\u6027\u3001\u6761\u4ef6\u6e32\u67d3\u53ca\u7ec4\u4ef6\u7ec4\u5408\uff0c\u5229\u7528 Vue \u7684\u54cd\u5e94\u5f0f\u66f4\u65b0\u540c\u6b65\u7ba1\u7406\u539f\u672c\u4f9d\u8d56\u5b57\u7b26\u4e32\u62fc\u63a5\u548c\u624b\u5de5\u64cd\u4f5c DOM \u7684\u5185\u5bb9\u3002\u8fd9\u662f\u65b0\u7248\u672c\u5bf9\u5f00\u53d1\u4f53\u9a8c\u63d0\u5347\u6700\u660e\u663e\u7684\u529f\u80fd\u4e4b\u4e00\uff0c\u6b22\u8fce\u5927\u5bb6\u5347\u7ea7\u4f53\u9a8c\u3002</p>\n<p><img alt=\"\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/8i1ctMn.png\"/></p>\n<p><em>\u5229\u7528\u65b0 API \uff0c\u77ed\u77ed\u51e0\u884c\u4ee3\u7801\u5373\u53ef\u5b9e\u73b0\u5728 tooltip \u4e2d\u6e32\u67d3\u5d4c\u5957\u56fe\u8868</em></p>\n<h3>\u667a\u80fd\u66f4\u65b0</h3>\n<p>\u9664\u4e86\u63d2\u69fd\uff0c\u6211\u4eec\u8fd8\u4e3a\u6570\u636e\u66f4\u65b0\u8bbe\u8ba1\u4e86\u667a\u80fd\u66f4\u65b0\u7b56\u7565\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u5f53 <code>option</code> \u6539\u53d8\u65f6\uff0cVue ECharts \u4f1a\u5206\u6790\u6570\u636e\u66f4\u65b0\u7684\u5dee\u5f02\uff0c\u51b3\u5b9a\u54ea\u4e9b\u5bf9\u8c61\u9700\u8981\u5408\u5e76\u3001\u54ea\u4e9b\u9700\u8981\u66ff\u6362\uff0c\u81ea\u52a8\u8bbe\u7f6e <code>replaceMerge</code>\uff1b\u5982\u679c\u64cd\u4f5c\u98ce\u9669\u8f83\u5927\u5219\u91c7\u7528 <code>notMerge: true</code>\u3002\u82e5\u9700\u8981\u5b8c\u5168\u63a7\u5236\u66f4\u65b0\u903b\u8f91\uff0c\u4ecd\u53ef\u901a\u8fc7 <code>update-options</code> \u6216\u5f00\u542f <code>manual-update</code> \u6765\u8fdb\u884c\u624b\u52a8\u63a7\u5236\u3002</p>\n<h3>\u5220\u9664 CSP \u5165\u53e3</h3>\n<p>\u6b64\u524d\u6211\u4eec\u63d0\u4f9b\u4e86\u4e13\u7528\u7684 <code>vue-echarts/cs</code>p \u5165\u53e3\uff0c\u4ee5\u4fbf\u5728\u542f\u7528\u4e25\u683c CSP \u65f6\u6216\u8005 SSR \u73af\u5883\u4e0b\u52a0\u8f7d\u65e0\u5185\u8054\u6837\u5f0f\u7684\u7248\u672c\u3002\u6211\u4eec\u5728 8.0 \u79fb\u9664\u4e86\u8be5\u5165\u53e3\uff0c\u5e76\u63d0\u4f9b\u4e86\u4e00\u4e2a\u65b0\u7684\u5728\u8fd0\u884c\u65f6\u6ce8\u5165\u5185\u8054\u6837\u5f0f\u7684\u65b9\u6848\uff0c\u5728\u7edd\u5927\u591a\u6570\u60c5\u51b5\u4e0b\u90fd\u4e0d\u518d\u9700\u8981\u63d0\u4f9b\u65e0\u6837\u5f0f\u7248\u672c\u5e76\u5728\u5e94\u7528\u4e2d\u624b\u52a8\u5f15\u5165\u6837\u5f0f\u6587\u4ef6\u3002\u4ec5\u5f53\u4f60\u540c\u65f6\u542f\u7528\u4e25\u683c\u7684 CSP \u4e14\u76ee\u6807\u6d4f\u89c8\u5668\u4e0d\u652f\u6301 <code>CSSStyleSheet()</code> API \u65f6\uff0c\u624d\u9700\u8981\u624b\u52a8\u5f15\u5165 <code>vue-echarts/style.css</code>\u3002\u8fd9\u610f\u5473\u7740\u7edd\u5927\u90e8\u5206\u9879\u76ee\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528\u9ed8\u8ba4\u5165\u53e3\uff0c\u4e0d\u518d\u9700\u8981\u4e3a CSP \u7ef4\u62a4\u989d\u5916\u914d\u7f6e\u3002</p>\n<h2>\u5de5\u7a0b\u5316\u66f4\u65b0</h2>\n<p>Vue ECharts \u81f3\u4eca\u5df2\u6709\u4e5d\u5e74\u5386\u53f2\u3002\u957f\u65f6\u95f4\u79ef\u7d2f\u7684\u5de5\u7a0b\u914d\u7f6e\u4e0e\u4f9d\u8d56\u5728\u73b0\u4ee3\u524d\u7aef\u73af\u5883\u4e0b\u663e\u5f97\u9648\u65e7\u3002\u672c\u6b21\u7248\u672c\u66f4\u65b0\u4e2d\uff0c\u6211\u4eec\u91cd\u6784\u4e86\u9879\u76ee\u7684\u5de5\u5177\u94fe\u548c\u76f8\u5173\u914d\u7f6e\uff0c\u5c06\u6784\u5efa\u3001\u6d4b\u8bd5\u548c\u53d1\u5e03\u6d41\u7a0b\u5168\u9762\u73b0\u4ee3\u5316\uff1a</p>\n<ul>\n<li>\u5347\u7ea7\u5230 ESLint flat config</li>\n<li>\u5e93\u672c\u8eab\u4ece Rollup \u5207\u6362\u5230\u4f7f\u7528 tsdown \u6784\u5efa</li>\n<li>\u4ece\u4e3a\u4e86\u540c\u65f6\u517c\u5bb9 Vue 2/3 \u800c\u624b\u5199\u7684\u7c7b\u578b\u58f0\u660e\u8fc1\u79fb\u5230\u81ea\u52a8\u751f\u6210</li>\n<li>\u8fc1\u79fb\u5230 <a href=\"https://docs.npmjs.com/trusted-publishers\" rel=\"nofollow\">npm trusted publishing</a></li>\n<li>Demo \u7ad9\u70b9\u4ece webpack + Vue CLI \u8fc1\u79fb\u5230 Vite \uff08 rolldown-vite \uff09</li>\n<li>\u63a5\u5165\u4e86 Renovate \uff0c\u81ea\u52a8\u66f4\u65b0\u4f9d\u8d56</li>\n<li>\u65b0\u589e\u4e86\u57fa\u4e8e Vitest \u7684\u5355\u5143\u6d4b\u8bd5\uff0c\u5e76\u501f\u52a9 Codex \u548c Copilot \u7684 coding agent \u5b9e\u73b0\u4e86 100% \u7684\u5206\u652f\u8986\u76d6\u7387</li>\n</ul>\n<p>\u8fd9\u4e9b\u6539\u52a8\u4e3b\u8981\u96c6\u4e2d\u5728\u7ef4\u62a4\u8005\u548c\u5de5\u5177\u94fe\u5c42\u9762\uff0c\u5bf9 API \u4f7f\u7528\u8005\u5f71\u54cd\u6709\u9650\uff0c\u4f46\u610f\u5473\u7740\u957f\u671f\u4f7f\u7528\u8be5\u5e93\u7684\u9879\u76ee\u53ef\u4ee5\u5728\u66f4\u73b0\u4ee3\u7684\u57fa\u7840\u4e0a\u7ee7\u7eed\u524d\u8fdb\u3002</p>\n<h3>\u65b0\u7248\u5b98\u7f51</h3>\n<p>\u501f\u52a9 AI \u548c Vibe coding \uff0c\u6211\u4eec\u4e3a <a href=\"https://vue-echarts.dev/\" rel=\"nofollow\">Vue ECharts \u7684\u5b98\u7f51</a>\u8fdb\u884c\u4e86\u4e00\u6b21\u8bbe\u8ba1\u66f4\u65b0\uff0c\u5e0c\u671b\u5927\u5bb6\u80fd\u559c\u6b22\u3002\u4e3b\u8981\u6539\u52a8\u5982\u4e0b\uff1a</p>\n<ul>\n<li>\u5b98\u7f51\u8bbe\u8ba1\u6539\u7248</li>\n<li>\u65b0\u589e\u6df1\u8272\u6a21\u5f0f\u652f\u6301</li>\n<li>\u5728 import \u4ee3\u7801\u751f\u6210\u5668\u4e2d\uff0c\u4f7f\u7528 Monaco editor \u4ee3\u66ff\u4e4b\u524d\u7684\u539f\u751f <code>&lt;textarea&gt;</code> + esbuild-wasm + Highlight.js \u7684\u65b9\u6848</li>\n</ul>\n<p><img alt=\"\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/FP9cQAs.png\"/></p>\n<p><em>\u9879\u76ee\u4e3b\u9875</em></p>\n<p><img alt=\"\" class=\"embedded_image\" loading=\"lazy\" referrerpolicy=\"no-referrer\" rel=\"noreferrer\" src=\"https://i.imgur.com/Hb5roGg.png\"/></p>\n<p><em>\u6df1\u8272\u6a21\u5f0f + import \u4ee3\u7801\u751f\u6210\u5668</em></p>\n<h3>\u56e2\u961f\u4e0e\u7ef4\u62a4</h3>\n<p>Last but not least \uff0c\u5728 8.0 \u8bbe\u8ba1\u3001\u8fed\u4ee3\u3001\u53d1\u5e03\u7684\u8fc7\u7a0b\u4e2d\uff0c\u6211\u4eec\u8fce\u6765\u4e86\u65b0\u7684\u56e2\u961f\u6210\u5458 <a href=\"https://github.com/kingyue737\" rel=\"nofollow\">@kingyue737</a>\uff0c\u53ef\u4ee5\u8bf4\u4ed6\u4e3b\u5bfc\u4e86 8.0 \u7248\u672c\u5927\u90e8\u5206\u529f\u80fd\u7684\u5b9e\u73b0\uff0c\u5305\u62ec\u63d2\u69fd API \u7684\u5b9e\u73b0\u3001\u5de5\u5177\u94fe\u7684\u91cd\u6784\u5347\u7ea7\u7b49\u7b49\u3002\u6709\u5174\u8da3\u7684\u8bdd\u53ef\u4ee5\u5728 GitHub \u4e0a\u5173\u6ce8\u4ed6\uff1a<a href=\"https://github.com/kingyue737\" rel=\"nofollow\">https://github.com/kingyue737</a></p>\n<h3>\u6700\u540e</h3>\n<p>\u6b22\u8fce\u5927\u5bb6\u5c1d\u8bd5\u4f7f\u7528\u65b0\u7248\u672c\uff0c\u5e76\u4e14\u901a\u8fc7 <a href=\"http://github.com/ecomfe/vue-echarts/issues\" rel=\"nofollow\">GitHub issue</a> \u53cd\u9988\u95ee\u9898\u548c\u5efa\u8bae\u3002</p>\n", 
      "date_published": "2025-09-29T07:55:15+00:00", 
      "title": "Vue ECharts 8.0 \u53d1\u5e03\u4e86", 
      "id": "https://www.v2ex.com/t/1162669"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/gotoschool", 
        "name": "gotoschool", 
        "avatar": "https://cdn.v2ex.com/gravatar/c186378c905d475b178ab94aa7ee3d3f?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1162238", 
      "date_modified": "2025-09-29T00:53:23+00:00", 
      "content_html": "\u7ea0\u7ed3\u53c8\u72af\u4e86<br />\u867d\u7136\u90fd\u662f ai \u5199<br />\u60f3\u4f7f\u7528\u4e00\u4e2a\u5e93\u524d\u540e\u53f0\u4e00\u8d77\u68ad\u54c8<br /><br />\u6216\u8005 shadcnui \u524d\u53f0\uff1f mantine UI \u540e\u53f0\uff1f<br />\u6709\u66f4\u597d\u7684\u65b9\u6848\u5417\uff1f\u603b\u611f\u89c9\u8eab\u5fc3\u75b2\u60eb\u554a", 
      "date_published": "2025-09-27T14:38:53+00:00", 
      "title": "mantine UI \u5e93\u548c shadcn UI \u5e93 \u9009\u54ea\u4e2a\uff1f", 
      "id": "https://www.v2ex.com/t/1162238"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Loser110", 
        "name": "Loser110", 
        "avatar": "https://cdn.v2ex.com/avatar/4560/7188/552270_large.png?m=1769519292"
      }, 
      "url": "https://www.v2ex.com/t/1161822", 
      "date_modified": "2025-09-26T05:44:29+00:00", 
      "content_html": "", 
      "date_published": "2025-09-25T09:42:17+00:00", 
      "title": "\u5927\u5bb6\u73b0\u5728\u8ba9 AI \u5199\u4ee3\u7801\uff0c\u4ea4\u4e92\u9875\u9762\uff0c\u4e00\u822c\u8ba9\u7528\u4ec0\u4e48 JavaScript \u5462\uff1f\u539f\u751f\uff0c Svelte\uff0c\u8fd8\u662f Vue\uff0c\u8fd8\u662f\u5176\u4ed6", 
      "id": "https://www.v2ex.com/t/1161822"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/kevinguoCN", 
        "name": "kevinguoCN", 
        "avatar": "https://cdn.v2ex.com/avatar/1694/019f/456681_large.png?m=1681655242"
      }, 
      "url": "https://www.v2ex.com/t/1160853", 
      "title": "webpack \u5f00\u53d1\u9759\u6001\u9875\u9762", 
      "id": "https://www.v2ex.com/t/1160853", 
      "date_published": "2025-09-21T06:21:50+00:00", 
      "content_html": "\u73b0\u5728\u524d\u7aef\u53ef\u80fd\u5df2\u7ecf\u90fd\u662f spa \u5e94\u7528\u3002 <br />\u73b0\u5728\u9047\u5230\u4e00\u4e2a cms \u7cfb\u7edf\u5f00\u53d1\u6a21\u677f\u7684\u5de5\u4f5c\uff0c\u8981\u5f00\u4e2a\u9759\u6001\u591a\u9875\u9762\uff0c\u5de5\u7a0b\u5316\u6709\u4ec0\u4e48\u5b9e\u73b0\u7684\u601d\u8def\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/zficode", 
        "name": "zficode", 
        "avatar": "https://cdn.v2ex.com/avatar/feea/1975/526639_large.png?m=1746499202"
      }, 
      "url": "https://www.v2ex.com/t/1159841", 
      "title": "\u804a\u804a\u524d\u7aef\u811a\u624b\u67b6\u5171\u6027", 
      "id": "https://www.v2ex.com/t/1159841", 
      "date_published": "2025-09-17T02:19:42+00:00", 
      "content_html": "<p>\u5728\u76ee\u524d\u7684\u524d\u7aef\u5f00\u53d1\u4e2d\uff0c\u6211\u4eec\u4f1a\u5927\u91cf\u4f7f\u7528 next.js \u3001umi \u3001modern.js \u3001taro \u8fd9\u6837\u7684\u811a\u624b\u67b6\u8fdb\u884c\u5f00\u53d1\u3002\u8fd9\u79cd\u811a\u624b\u67b6\u5f80\u5f80\u4f7f\u7528\u4e86\u201c\u7ea6\u5b9a\u5927\u4e8e\u914d\u7f6e\u201d\u7684\u601d\u60f3\uff0c\u540c\u65f6\u96c6\u6210\u4e86\u8def\u7531\u3001\u63d2\u4ef6\u7b49\u673a\u5236\uff0c\u53ef\u4ee5\u8bf4\u662f\u4e00\u4e2a\u9ed1\u76d2\u3002\u6240\u4ee5\u6211\u60f3\u63a2\u8ba8\u4e00\u4e0b\u5982\u4e0b\u4e24\u4e2a\u95ee\u9898\uff1a</p>\n<ol>\n<li>\u6211\u60f3\u77e5\u9053\u4ece\u6280\u672f\u4e0a\u4e86\u89e3\u4e00\u4e0b\u8fd9\u79cd\u811a\u624b\u67b6\u8bbe\u8ba1\u7684\u6838\u5fc3\u601d\u60f3\u662f\u5565\uff1f\u6709\u6ca1\u6709\u4e00\u4e9b\u601d\u8003\u7684\u6587\u7ae0\u3002</li>\n<li>\u60f3\u77e5\u9053\u4e00\u4e0b\u5404\u4f4d\u5728\u4f7f\u7528\u8fc7\u7a0b\u4e2d\u7684\u75db\u70b9\u662f\u5565\uff0c\u4ee5\u53ca\u8fd9\u79cd\u524d\u7aef\u811a\u624b\u67b6\u5728\u9009\u578b\u7684\u5173\u6ce8\u70b9\u662f\u4ec0\u4e48\u3002</li>\n</ol>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/laobaiguolai", 
        "name": "laobaiguolai", 
        "avatar": "https://cdn.v2ex.com/gravatar/18ef30a9cd29a69c344562bc67b43a5e?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/1158335", 
      "title": "\u8017\u65f6 30 \u5206\u949f\uff0c\u89e3\u51b3\u4e86\u5c0f\u8bed\u79cd\u7ffb\u8bd1\u95ee\u9898\uff0c\u80fd\u7ffb\u8bd1 100 \u591a\u4e2a\u8bed\u79cd", 
      "id": "https://www.v2ex.com/t/1158335", 
      "date_published": "2025-09-10T08:11:22+00:00", 
      "content_html": "<p>\u8d77\u56e0\uff1a\u7f51\u7ad9\u8981\u5b9e\u73b0\u591a\u8bed\u79cd\uff0c\u6700\u597d\u662f\u80fd\u6709\u771f\u5b9e HTML \uff0c\u5176\u5b9e\u73b0 SEO \u3002</p>\n<p>\u5728 v2 \u53d1\u8d34\u95ee\u8fc7\u7c7b\u4f3c\u7684\u95ee\u9898\uff0c\u5927\u795e\u6839\u636e\u6211\u7684\u63cf\u8ff0\uff0c\u5efa\u8bae\u6211\u81ea\u5df1\u5f00\u53d1\u3002\u3002\u3002\uff08\u6280\u672f\u5496\u89e3\u51b3\u95ee\u9898\u603b\u662f\u8fd9\u4e48\u5e72\u8106\u7c97\u66b4\uff09\n\u5feb\u63a5\u8fd1\u653e\u5f03\u7684\u65f6\u5019\uff0c\u627e\u5230\u4e86\u4e00\u4e2a\u56fd\u4ea7\u7684\uff0c\u53f7\u79f0\u53ea\u9700\u8981\u51e0\u884c\u4ee3\u7801\u5c31\u53ef\u4ee5\u5b9e\u73b0\u7684\u725b\u903c\u7ffb\u8bd1\uff0c\u5173\u952e\u514d\u8d39\uff01\u7136\u540e\u8bd5\u4e86\u4e0b\uff0c\u53d1\u73b0\u6709\u4e24\u79cd\u3002\u4e00\u79cd\u662f\u524d\u7aef\u9875\u9762\u7ffb\u8bd1\uff0c\u4ee3\u7801\u4e0d\u53d8\uff08 app \u4e5f\u53ef\u4ee5\u7528\uff0c\u81ea\u5df1\u627e\u627e\u6587\u6863\uff09\u3002\u53e6\u4e00\u79cd\u662f\u76f4\u63a5\u7ed9\u4f60\u7ffb\u8bd1\u6210 html \uff0c\u4f60\u81ea\u5df1\u7ed1\u4e2a\u57df\u540d\u5c31\u80fd\u8bbf\u95ee\u5c0f\u8bed\u79cd\u7684\u65b9\u5f0f\uff0c\u975e\u5e38\u9002\u5408 seo \uff0c\u6536\u5f55\u51fa\u8bcd\u90fd\u6b63\u5e38\u3002\n\u524d\u8005\u53eb\uff1atranslate.js  ( <a href=\"https://gitee.com/mail_osc/translate\" rel=\"nofollow\">https://gitee.com/mail_osc/translate</a>)\n\u540e\u8005\u53eb\uff1aTCDN \uff08 <a href=\"https://translate.zvo.cn/236899.html\" rel=\"nofollow\">https://translate.zvo.cn/236899.html</a> \uff09</p>\n<p>\u5728 github \u548c gitee \u4e0a\u80fd\u641c\u5230\u3002</p>\n<p>\u8981\u8bf4\u660e\u7684\u662f translate.js \u7eaf\u514d\u8d39\uff0cTCDN \u662f\u79c1\u6709\u90e8\u7f72\u4e5f\u662f\u514d\u8d39\u7684\u3002\u770b\u4ed6\u4eec\u5b98\u65b9\u7fa4\u91cc\u6d88\u606f\u8c8c\u4f3c\u662f\u7531 gitee \u548c oschina \u8fd9\u4e9b\u5927\u5e73\u53f0\u63d0\u4f9b\u7684\u514d\u8d39\u7b97\u529b\u3002</p>\n<p>\u53cd\u6b63\uff0c\u6bd4 i18n \u64cd\u4f5c\u8981\u7b80\u5355\u4e86\u3002\u597d\u4e1c\u897f\uff0c\u503c\u5f97\u4e3a\u4ed6\u63a8\u8350\uff01</p>\n"
    }
  ]
}