1

在我的原生脚本项目中,我使用了 angular-native-seed。除实时同步外,一切正常。在问题列表下的 git hub 中提出了同样的问题,但仍然没有人解决。

每当文件更改时,都会调用 gulp watch 但无法从 src 文件夹覆盖 app 文件夹(请参阅下面提到的 url 线程中的最后评论)。

URL :在此处输入链接描述

Gulpfile.js

gulp.task('tns.Livesync', () => {
return gulp.watch([`../${SRC}**/*.common.ts`, `../${SRC}**/*.tns.ts`, `../${SRC}**/*.tns.html`,  `../${SRC}**/*.service.ts`,
 `../${SRC}**/*.tns.scss`, `../${SRC}**/*.scss`, `../${SRC}**/*.component.ts`, `../${SRC}**/*.routes.ts`,
 `../${SRC}**/*.index.ts`])
    .on('change', (file) => {
        var outputDest = file.substring(0, file.lastIndexOf('\\')+1).replace(SRC.substring(0, SRC.length - 1), DEST).replace('..\\', '');
        console.log('File-->' + file);
        console.log('Des-->' + outputDest);
        gulp.src([file])
            .pipe(rename(removeTns))
            .pipe(replace('.scss\'', '.css\'', { logs: { enabled: true }}))
            .pipe(debug({title: 'tns.Livesync'}))
            .pipe(debug({title: 'out ' + outputDest}))
            .pipe(gulp.dest(outputDest, {overwrite: true}));
    });

});

有人帮我吗?

4

1 回答 1

2

这对我有用:

gulp.task('tns.Livesync', () => {
    return gulp.watch([`../${SRC}**/*.common.ts`, `../${SRC}**/*.tns.ts`, `../${SRC}**/*.tns.html`,  `../${SRC}**/*.service.ts`,
     `../${SRC}**/*.tns.scss`, `../${SRC}**/*.scss`, `../${SRC}**/*.component.ts`, `../${SRC}**/*.routes.ts`,
     `../${SRC}**/*.index.ts`])
        .on('change', (file) => {
            var outputDest = file.substring(0, file.lastIndexOf('\\')+1).replace('src\\', 'app\\').replace('..\\', '');
            gulp.src([file])
                .pipe(rename((path) => { path.dirname = ''; }))
                .pipe(rename(removeTns))
                .pipe(replace('.scss\'', '.css\'', { logs: { enabled: true }}))
                .pipe(debug({title: 'tns.Livesync'}))
                .pipe(debug({title: 'out ' + outputDest}))
                .pipe(gulp.dest(outputDest, {overwrite: true}));
        });
});
于 2018-04-17T10:39:31.733 回答