babel 的插件系统被 swc 整合成了jsc.parser内的配置,基本上大部分插件都能照顾到。而且,swc 还继承了压缩的能力,通过minify属性开启,jsc.minify用于配置压缩相关的规则,更详细的配置可查看文档。 Node APIs 通过在 node.js 代码中,导入@swc/core模块,可以在 node.js 中调用 api 直接进行代码的编译,这对 CLI ...
{ "jsc": { "parser": { "syntax": "type", "tsx": true, "dynamicImport": true }, "transform": { "react": { "pragma": "React.", "pragmaFrag": "React.Fragment", "throwIfNamespace": true, "development": false, "useBuiltIns": true } } } } 这个配置启用了 Type 支持,并设置...
就像篇头说的一样,swc 很多行为都是站在 babel 巨人的肩膀上在做,这其中就包括 @babel/helpers,swc 可以通过 swcOptions.jsc.externalHelpers 来将_typeof 工具方法抽成一个包,从而避免在最终构建的时候打入多份实现。 但是,swc 是自己做的 helpers — @swc/helpers(甚至比 @babel/helpers 做的丰富),这就带...
可以创建一个名为.swcrc的文件,内容如下: {"jsc":{"target":"esnext","parser":{"syntax":"typescript","tsx":false},"transform":{"decoratorMetadata":true}},"module":{"type":"commonjs"}} 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 在这个配置文件中,我们指定了...
{env:None,test:None,exclude:None,jsc:Default::default(),module:None,minify:Default::default(),input_source_map:None,source_maps:None,inline_sources_content:Default::default(),emit_source_map_columns:Default::default(),error:Default::default(),is_module:Default::default(),schema:None},skip_...
首先,我们需要安装@swc/cli和@swc/core。 npm install --save-dev @swc/cli @swc/core 上述命令将安装 SWC 的命令行工具和核心库。 配置SWC 在项目根目录下创建swc.config.json文件来配置 SWC。以下是一个基本的配置示例: { 'jsc': { 'parser': { ...
jsc:{experimental:{plugins:[['swc-plugin-jsx-control-statements',{}],],},}, Usage <If>tag importReactfrom'react';constGreeting=()=>{const[closed,setClosed]=useState(false);return(<><Ifcondition={!closed}>Hello,</If>World<Ifcondition={!closed}>setClosed(true)}>Close</If></>)}; <...
jsc: { target: "es5", //代码转换es5 parser: { syntax: 'ecmascript' } } }) console.log(result.code) 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 转换后结果 代码解读 //语法 function _array_like_to_array(arr, len) { if (len == null || len > arr.length) len = arr.length...
// swc config { jsc: { experimental: { plugins: [+['swc-plugin-auto-css-modules', {}]], }, } } Auto css modules This plugin will auto add the?modulessuffix. importstylesfrom'./index.less'// toimportstylesfrom'./index.less?modules' ...
npm i -D swc-plugin-import-meta-env Usage 🚀 Simply add this to the plugins field of your.swcrc. {"jsc": {"experimental": {"plugins": [["swc-plugin-import-meta-env", {}]] } } } Or programmatically as an extension to your existing.swcrcparsing: ...