Gulp 浏览器同步:脚本赢得';无法从父目录加载

Gulp 浏览器同步:脚本赢得';无法从父目录加载,gulp,browser-sync,npm-live-server,Gulp,Browser Sync,Npm Live Server,我正在尝试让浏览器同步在我的项目中工作,而不是使用live server 应用程序结构如下所示: personal-app ├── node_modules └── src ├── app │ └── app.ts └── index.html 在index.html中,脚本从节点模块加载 <script src="../node_modules/systemjs/dist/system.src.js"></script> <scr

我正在尝试让浏览器同步在我的项目中工作,而不是使用live server

应用程序结构如下所示:

personal-app
├── node_modules
└── src
    ├── app
    │   └── app.ts
    └── index.html  
在index.html中,脚本从节点模块加载

<script src="../node_modules/systemjs/dist/system.src.js"></script>
<script src="../node_modules/angular2/bundles/angular2.dev.js"></script>
当我将src路径指定为base dir
baseDir:“./src”
站点可以工作,但脚本无法加载

但当我将其更改为
baseDir:“./”

网站给我的无法获取/,但是当我在chrome中像这样向url添加“/src”时,它就工作了

因此,这里的问题是浏览器同步不会从其baseDir的父文件夹加载脚本

我需要一种方法来配置浏览器同步,以便从其
baseDir:“./”
启动,但从子文件夹加载主页index.html

浏览器同步是否可以实现此功能?

来自

baseDir可以采用多条路径。我添加了存在index.html的src文件夹

gulp.task('serve', function() {
    browserSync.init({
        server: {
            baseDir: ["./", "./src"]   //added multiple directories 
        }
    });
    gulp.watch(sassfiles, ['sass']);
    gulp.watch(htmlfiles).on('change', browserSync.reload);
});

谢谢,伙计,这把我搞砸了3个小时:)。这救了我的命,我快疯了,所以我们可以使用无限多个目录?或者,这就像将根路径
/
符号链接到
/src
?此外,如果使用
目录:true
将目录列表显示为起始页,browserSync将使用
baseDir
中的第一个目录作为列表。在这种情况下,“/”应该注意,当前版本的文档(截至2021年2月)没有明确提及这一点;相反,这是相当推断的…
gulp.task('serve', function() {
    browserSync.init({
        server: {
            baseDir: ["./", "./src"]   //added multiple directories 
        }
    });
    gulp.watch(sassfiles, ['sass']);
    gulp.watch(htmlfiles).on('change', browserSync.reload);
});