3

我正在阅读@Material 教程并且遇到了转译 ES6 代码的问题。我之前使用 Gulp 作为我的任务运行器构建了这个项目,我想知道我是否应该只使用 webpack 来代替捆绑功能。

我的gulpfile.js代码设置如下:

const babel = require('gulp-babel');

gulp.task('scripts', function(done) {
    return gulp.src(
      [
      'node_modules/@material/'
      ])
      .pipe(babel({
        presets: ['env']
      }).on('error', babel.logError))
      .pipe(gulp.dest('compiled'))
});

带有 @Material 组件的 JS 文件加载如下:

<script type="module" src="js/loggedin.js"></script>

该 JS 文件如下所示:

import {MDCRipple} from '@material/button';
import {MDCTextField} from '@material/textfield';

但是,在控制台中,我收到以下错误:Uncaught TypeError: Failed to resolve module specifier "@material/button". Relative references must start with either "/", "./", or "../".

当我尝试通过添加相对路径来解决时,控制台会抱怨:

GET http://localhost:8081/node_modules/@material/button net::ERR_ABORTED 404 (Not Found)

我已经仔细检查了路径,它应该是正确的。我可能做错了什么?

4

0 回答 0