如何使用babel / register忽略非js文件

时间:2015-10-24 23:26:36

标签: javascript node.js babeljs

当我的节点应用程序包含来自我的应用程序的路由时,我想忽略非js文件,例如

import './scss/App.scss' // i.e via Router.js -> Routes.js -> App.js

目前Node正在尝试解析scss错误,因为它试图将scss解析为js。 babel hook目前看起来像这样:

require('babel/register')({
    stage: 0
});

我怎么能让babel忽视它们?感谢

3 个答案:

答案 0 :(得分:11)

原来是节点需要调整:

require.extensions['.scss'] = () => {};

答案 1 :(得分:0)

您可以创建.babelrc文件并设置ignore规则:

{
  "stage": 0,
  "ignore": [
    "*.scss"
  ]
}

您可以在此处详细了解此信息 - https://babeljs.io/docs/usage/babelrc/

答案 2 :(得分:0)

您可以使用babel-plugin-transform-import-ignore忽略匹配的导入。编译后将删除所有匹配的导入语句。

{
  plugins: [
    [
      "babel-plugin-transform-import-ignore",
      {
        patterns: [".scss"]
      }
    ]
  ]
}