{"id":283,"date":"2024-11-08T15:36:58","date_gmt":"2024-11-08T07:36:58","guid":{"rendered":"https:\/\/www.linn.pro\/?p=283"},"modified":"2024-11-15T11:10:18","modified_gmt":"2024-11-15T03:10:18","slug":"plasmo","status":"publish","type":"post","link":"https:\/\/www.linn.pro\/zh\/\u5f00\u53d1\u8005\/\u6a21\u677f\/283","title":{"rendered":"Plasmo"},"content":{"rendered":"<p>\"(\u300a\u4e16\u754c\u4eba\u6743\u5ba3\u8a00\u300b)\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/www.plasmo.com\/\" target=\"_blank\" rel=\"noopener\">Plasmo<\/a>\u00a0Framework \u662f\u7531\u9ed1\u5ba2\u4e3a\u9ed1\u5ba2\u6253\u9020\u7684\u4e00\u6b3e\u7535\u6c60\u5bb9\u91cf\u5145\u8db3\u7684\u6d4f\u89c8\u5668\u6269\u5c55 SDK\u3002\u60a8\u53ea\u9700\u6784\u5efa\u81ea\u5df1\u7684\u4ea7\u54c1\uff0c\u800c\u4e0d\u5fc5\u518d\u62c5\u5fc3\u914d\u7f6e\u6587\u4ef6\u548c\u6784\u5efa\u6d4f\u89c8\u5668\u6269\u5c55\u65f6\u7684\u5404\u79cd\u95ee\u9898\u3002<\/p>\n<blockquote class=\"mt-6 border-l-2 pl-6 italic [&amp;&gt;*]:text-muted-foreground\" style=\"box-sizing: border-box; border-width: 0px 0px 0px 2px; border-style: solid; border-color: hsl(var(--border)); border-image: initial; --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgba(59,130,246,.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; margin: 1.5rem 0px 1.6em; font-weight: 500; font-style: italic; color: var(--tw-prose-quotes); border-inline-start-width: 0.25rem; border-inline-start-color: var(--tw-prose-quote-borders); quotes: '\u201c' '\u201d' '\u2018' '\u2019'; padding-inline-start: 1em; padding-left: 1.5rem; font-family: __Source_Sans_3_32aa65, __Source_Sans_3_Fallback_32aa65; font-size: 16px; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: 0.4px; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: #ffffff; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;\"><p>\u8fd9\u5c31\u50cf\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/nextjs.org\/\" target=\"_blank\" rel=\"noopener\">Next.js<\/a>\u00a0\u6d4f\u89c8\u5668\u6269\u5c55\uff01<\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<h4 class=\"mb-2 text-lg font-semibold dark:text-foreground\">\u7a81\u51fa\u7279\u70b9<\/h4>\n<ul>\n<li>\u5934\u7b49\u8231\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/reactjs.org\/\" target=\"_blank\" rel=\"noopener\">\u53cd\u5e94<\/a>\u00a0+\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/www.typescriptlang.org\/\" target=\"_blank\" rel=\"noopener\">\u6253\u5b57\u7a3f<\/a>\u00a0\u652f\u6301<\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework#where-is-the-manifestjson-file\" target=\"_blank\" rel=\"noopener\">\u58f0\u660e\u5f0f\u5f00\u53d1<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/csui\" target=\"_blank\" rel=\"noopener\">\u5185\u5bb9\u811a\u672c\u7528\u6237\u754c\u9762<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/tab-pages\" target=\"_blank\" rel=\"noopener\">\u6807\u7b7e\u9875<\/a><\/li>\n<li>\u5b9e\u5f39\u88c5\u586b + React HMR<\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/env\" target=\"_blank\" rel=\"noopener\"><code>.env*<\/code><\/a>\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/env\" target=\"_blank\" rel=\"noopener\">\u6587\u4ef6<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/storage\" target=\"_blank\" rel=\"noopener\">\u5b58\u50a8 API<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/messaging\" target=\"_blank\" rel=\"noopener\">\u6d88\u606f\u4f20\u9001 API<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/remote-code\" target=\"_blank\" rel=\"noopener\">\u8fdc\u7a0b\u4ee3\u7801\u6346\u7ed1<\/a>\u00a0(\u4f8b\u5982\uff0c\u7528\u4e8e\u8c37\u6b4c\u5206\u6790\uff09\u3002<\/li>\n<li>\u9501\u5b9a\u76ee\u6807\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/workflows\/build#with-specific-target\" target=\"_blank\" rel=\"noopener\">\u591a\u4e2a\u6d4f\u89c8\u5668\u548c\u6e05\u5355\u5bf9<\/a><\/li>\n<li><a class=\"dark:text-foreground\" href=\"https:\/\/docs.plasmo.com\/framework\/workflows\/submit\" target=\"_blank\" rel=\"noopener\">\u901a\u8fc7 BPP \u81ea\u52a8\u90e8\u7f72<\/a><\/li>\n<li>\u53ef\u9009\u652f\u6301\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/github.com\/PlasmoHQ\/with-svelte\" target=\"_blank\" rel=\"noopener\">Svelte<\/a>\u00a0\u548c\u00a0<a class=\"dark:text-foreground\" href=\"https:\/\/github.com\/PlasmoHQ\/with-vue\" target=\"_blank\" rel=\"noopener\">\u89c6<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>The\u00a0Plasmo\u00a0Framework is a battery-packed browser extension SDK made by hackers for hackers. Build your product and stop worrying about config files and the odd peculiarities of building browser extensions. It's like\u00a0Next.js\u00a0for browser extensions! &nbsp; Highlighted Features First-class\u00a0React\u00a0+\u00a0Typescript\u00a0Support Declarative Development Content Scripts UI Tab Pages Live-reloading + React HMR .env*\u00a0files Storage API Messaging API Remote code bundling\u00a0(e.g., for Google Analytics) Targeting\u00a0multiple browser and manifest pairs Automated deployment via BPP Optional support for\u00a0Svelte\u00a0and\u00a0Vue<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[107],"tags":[140],"class_list":["post-283","post","type-post","status-publish","format-standard","hentry","category-template","tag-plasmo"],"_links":{"self":[{"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/posts\/283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/comments?post=283"}],"version-history":[{"count":0,"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/posts\/283\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/media?parent=283"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/categories?post=283"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linn.pro\/zh\/wp-json\/wp\/v2\/tags?post=283"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}