angular2项目 gulp配置文件

gulpfile.js

var gulp = require(‘gulp‘);
// typescript编译插件
var ts = require(‘gulp-typescript‘);
var tsProject = ts.createProject(‘tsconfig.json‘);
// 生成js.map文件,便于调试
var sourcemaps = require(‘gulp-sourcemaps‘);
// web服务器插件
var browserSync = require(‘browser-sync‘).create();
var reload = browserSync.reload;
var historyApiFallback = require(‘connect-history-api-fallback‘);

// 监控文件目录
var tsFiles = ‘src/**/*.ts‘;
var staticFiles = [‘src/**/*‘, ‘!‘ + tsFiles];
var npm = ‘node_modules/‘;
var nodeModules = [npm + ‘@angular/**/bundles/**/*‘, npm + ‘angular-in-memory-web-api/bundles/**/*‘, npm + ‘rxjs/**/*‘, npm + ‘core-js/client/**/*‘, npm + ‘zone.js/dist/**/*‘, npm + ‘systemjs/dist/**/*‘
    , npm + ‘systemjs-plugin-css/**/*‘, npm + ‘jquery/dist/**/*‘, npm + ‘bootstrap/dist/**/*‘, npm + ‘font-awesome/**/*‘, npm + ‘bootstrap-table/dist/**/*‘, npm + ‘ng2-translate/bundles/*‘
    , npm + ‘bootbox/bootbox.min.js‘, npm + ‘@ng-bootstrap/**/*‘, npm + ‘oeslib/**/*‘, npm + ‘zenap-smart-Table/**/*‘
];

// tsc任务,编译ts源代码,并输出到dist目录
gulp.task(‘tsc‘, function () {
    gulp.src(tsFiles).pipe(sourcemaps.init()).pipe(tsProject())
        .pipe(sourcemaps.write(‘maps‘)).pipe(gulp.dest(‘dist‘));
});

// static任务,拷贝静态文件(除ts之外的html、css等文件)到dist目录
gulp.task(‘static‘, function () {
    gulp.src(staticFiles).pipe(gulp.dest(‘dist‘));
});

// modules任务,拷贝node_modules依赖插件文件到dist目录
gulp.task(‘modules‘, function () {
    gulp.src(nodeModules, { base: ‘node_modules‘ }).pipe(gulp.dest(‘dist/plugin‘));
});

// watch任务,监视文件变更,重新输出到dist目录
gulp.task(‘watch-ts‘, [‘tsc‘], function (done) {
    browserSync.reload();
    done();
});

gulp.task(‘watch-static‘, [‘static‘], function (done) {
    browserSync.reload();
    done();
});

// 启动web服务器
gulp.task(‘server‘, [‘tsc‘, ‘static‘, ‘modules‘], function () {
    browserSync.init({
        server: {
            baseDir: "dist",
            middleware: [historyApiFallback()] // 使用angular的html5模式(hash)路由,需要此配置
        }
    });

    gulp.watch(tsFiles, [‘watch-ts‘]);
    gulp.watch(staticFiles, [‘watch-static‘]);
});

// default任务,命令行运行gulp的默认任务
gulp.task(‘default‘, [‘server‘], function () {
});

package.json

{
  "name": "angular-quickstart",
  "version": "1.0.0",
  "description": "QuickStart package.json from the documentation, supplemented with testing support",
  "scripts": {
    "start": "gulp"
  },
  "keywords": [],
  "author": "",
  "license": "MIT",
  "dependencies": {
    "@angular/common": "~2.4.0",
    "@angular/compiler": "~2.4.0",
    "@angular/core": "~2.4.0",
    "@angular/forms": "~2.4.0",
    "@angular/http": "~2.4.0",
    "@angular/platform-browser": "~2.4.0",
    "@angular/platform-browser-dynamic": "~2.4.0",
    "@angular/router": "~3.4.0",
    "angular-in-memory-web-api": "~0.2.4",
    "bootstrap": "^3.3.7",
    "core-js": "^2.4.1",
    "rxjs": "5.0.1",
    "systemjs": "0.19.40",
    "zone.js": "^0.7.4"
  },
  "devDependencies": {
    "@types/jasmine": "2.5.36",
    "@types/node": "^6.0.46",
    "browser-sync": "^2.18.6",
    "gulp": "^3.9.1",
    "gulp-typescript": "^3.1.5",
    "typescript": "~2.0.10",
    "gulp-sourcemaps": "^2.4.1"
  },
  "repository": {}
}
时间: 2024-12-29 06:49:53

angular2项目 gulp配置文件的相关文章

如何在ASP.NET 5上搭建基于TypeScript的Angular2项目

一.前言 就在上月,公司的一个同事建议当前的前端全面改用AngularJs进行开发,而我们采用的就是ASP.NET 5项目,原本我的计划是采用TypeScript直接进行Angular2开发.所以借用这段时间来写下如何在ASP.NET 5下搭建基于TypeScript的Angualr2的项目,下面我们就进入正题. 二.环境配置 如果读者直接按照Angular.io上的方式搭建是无法通过的,所以下面我们的教程基本跟Angular.io上的类似,只是其中的配置会有所不同,并且也会多出一些步骤. 1.

ASP.NET Core实现类库项目读取配置文件

.NET Core类库项目读取JSON配置文件 在应用程序目录下添加JSON文件是进行如下配置:                 var builder = new ConfigurationBuilder()                 .SetBasePath(env.ContentRootPath)                 .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)   

Spring项目的配置文件们(web.xml context servlet springmvc)

我们的spring项目目前用到的配置文件包括1--web.xml文件,这是java的web项目的配置文件.我理解它是servlet的配置文件,也就是说,与spring无关.即使你开发的是一个纯粹jsp页面的web项目,你也必须配置这个文件.我们的java web项目肯定写了很多servlet代码,这些servlet需要运行在servlet容器中,这个容器就是tomcat的重要组件.也就是,你的web项目需要运行在tomcat中,那么你必须提供一个web.xml文件作为配置文件.在这个文件中,通过

1.搭建Angular2项目

简述:搭建angular2的开发环境,网上已经有许多教程,不过都是window系统下的教程,我本人使用的是linux系统,搭建环境的过程也稍微比前者麻烦了一点. 1. pakeage.json配置文件:是用来声明项目中使用的模块,在部署环境时,只要在pakeage所在的目录执行npm install命令就可以安装所有需要的模块了. 新建一个文件夹作为项目的根目录,整个项目的文件都存放在这个文件夹下面.在根目录下创建一个package.json的配置文件,该文件描述了npm包的所有相关信息, 包括

(三) Angular2项目框架搭建心得

前言: 在哪看到过angular程序员被React程序员鄙视,略显尴尬,确实Angular挺值得被调侃的,在1.*版本存在的几个性能问题,性能优化的"潜规则"贼多,以及从1.*到2.*版本的面目全非,不过宽容点来看这个强大的框架,升级到ng2肯定是一件好事情,虽然截至目前ng2还存在或多或少需要完善的地方,但是ng2做到了留下并强化ng1好的部分,移除或改善其不好的部分,并且基于许多较新Web技术来开发,不去看从ng1迁移到ng2的门槛和工作量的话,ng2的编程体验是很酷炫的. 目前n

spring mvc 项目 相关配置文件小结

web.xml文件主要配置如下: 需要加载的配置文件: 类路径下,可以使用通配符配置  类似:classpath:conf/spring/*/*.xml, <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:conf/spring/spring-da.xml, classpath:conf/spring/spring-res.xml, &

gulp配置文件(gulpfile.js)

需要安装的插件 "gulp": "^3.9.1","gulp-clean": "^0.3.2","gulp-concat": "^2.6.1","gulp-connect": "^5.0.0","gulp-cssmin": "^0.2.0","gulp-imagemin": "^

配置Asp.Net Web项目NLog配置文件的位置

在使用NLog在asp.net项目中发现,如果想单独配其配置文件的位置时没有像Log4Net的特性配置方案,可以使其提供的 XmlLoggingConfiguration类来初始化: 见:https://github.com/NLog/NLog/wiki/Configuration-file LogManager.Configuration = new XmlLoggingConfiguration("assets/someothername.config"); 不过这种方法是不能在W

框架 day39-42 SSH整合练习项目CRM(配置文件,增删改查,ajax,上传/下载,分页,BaseDao/Action)

1     配置文件 1.1   spring配置 1.1.1       介绍     加载properties     配置数据源DataSource     配置SessionFactory , 加载所有hbm.xml     hibernate事务管理     使用 <import > 所有的模块都使用单独配置文件 1.1.2       使用源码包     使用config源码,将源码和配置文件分开存放,方便程序的维护. 1.1.3       spring核心 1.1.