如何在Django中使用Gulp Browsersync?

时间:2016-02-21 01:46:59

标签: python django gulp browser-sync build-tools

第一次使用Gulp,我正在学习一些似乎不适合我的教程。我有一个真正的基础项目,我只想学习如何使用Gulp进行标准化的事情,如JavaScript / CSS缩小,图像缩小和浏览器同步。

当我使用浏览器同步运行我的观看任务时,它会转到localhost:8000的正确网址,但会显示Cannot GET /而不是呈现我的网页。我如何解决这个问题,以便我可以将Browsersync与Django一起使用?

档案目录:

http://screencast.com/t/AkIOE3TO

gulpfile.js

var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();

gulp.task('sass', function() {
  return gulp.src('polls/static/polls/scss/**/*.scss')
    .pipe(sass())
    .pipe(gulp.dest('polls/static/polls/css'))
    .pipe(browserSync.reload({
      stream: true
    }))
});

gulp.task('browserSync', function() {
  browserSync.init({
    server: "mysite",
    port: 8000
  });
});

gulp.task('watch', ['browserSync', 'sass'], function() {
  gulp.watch('polls/static/polls/scss/**/*.scss', ['sass']);
})

2 个答案:

答案 0 :(得分:14)

只需要创建另一个名为println(tank.damage) // 10.0 的任务,该任务在cmd runserver中运行。将任务作为Browsersync的依赖项之一,设置代理和端口,然后我就开始了。

python manage.py runserver并不需要任何额外的var exec = require('child_process').exec。我认为它是自动内置的。

npm install

答案 1 :(得分:0)

gulp.task('browserSync', ['runserver'], function() {
  browserSync.init({
    notify: false,
    proxy: 'localhost:8000'
  })
});