Angular js 单页应用环境搭建

Posted peakpanblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Angular js 单页应用环境搭建相关的知识,希望对你有一定的参考价值。

目录

Angular js 单页应用的开发环境搭建

简介

一直都在做后端的开发,因为最近项目中有用到Angularjs,对这个google开发的前端框架很感兴趣,于是找了一个相关的资料学习了一下,写下文章记录一下学习的过程。

学习angularjs 1.x.x的应用,并以此做一个webapp的前端单页应用

来源慕课网教学视频

开发环境搭建

NodeJs环境安装, 安装地址

全局安装bower, 解决js的依赖管理

npm install bower -g

全局安装自动化管理工具gulp

全局安装gulp及相关依赖

npm install -g gulp
npm install gulp-clean gulp-concat gulp-cssmin gulp-imagemin gulp-less gulp-load-plugins gulp-plumber gulp-uglify open

配置文件gulpfile.js

var gulp = require("gulp");
var $ = require("gulp-load-plugins")();
var open = require(‘open‘);

var app = {
        srcPath: ‘src/‘,
        devPath: ‘build/‘,
        prdPath: ‘dist/‘
}

gulp.task(‘lib‘, function() {
    gulp.src(‘bower_components/**/*.js‘)
    .pipe(gulp.dest(app.devPath + ‘vendor‘))
    .pipe(gulp.dest(app.prdPath + ‘vendor‘))
    .pipe($.connect.reload())
});

gulp.task(‘html‘, function() {
    gulp.src(app.srcPath + ‘**/*.html‘)
    .pipe(gulp.dest(app.devPath))
    .pipe(gulp.dest(app.prdPath))
    .pipe($.connect.reload())
});

gulp.task(‘json‘, function() {
    gulp.src(app.srcPath + ‘data/**/*.json‘)
    .pipe(gulp.dest(app.devPath + ‘data‘))
    .pipe(gulp.dest(app.prdPath + ‘data‘))
    .pipe($.connect.reload())
});

gulp.task(‘less‘, function() {
    gulp.src(app.srcPath + ‘style/index.less‘)
    .pipe($.less())
    .pipe(gulp.dest(app.devPath + ‘css‘))
    .pipe($.cssmin())
    .pipe(gulp.dest(app.prdPath + ‘css‘))
    .pipe($.connect.reload())
});

gulp.task(‘js‘, function() {
    gulp.src(app.srcPath + ‘script/**/*.js‘)
    .pipe($.concat(‘index.js‘))
    .pipe(gulp.dest(app.devPath + ‘js‘))
    .pipe($.uglify())
    .pipe(gulp.dest(app.prdPath + ‘js‘))
    .pipe($.connect.reload())
});

gulp.task(‘image‘, function() {
    gulp.src(app.srcPath + ‘image/**/*‘)
    .pipe(gulp.dest(app.devPath + ‘image‘))
    .pipe($.imagemin())
    .pipe(gulp.dest(app.prdPath + ‘image‘))
    .pipe($.connect.reload())
});

gulp.task(‘clean‘, function() {
    gulp.src([app.devPath, app.prdPath])
    .pipe($.clean())
});

gulp.task(‘build‘, [‘image‘, ‘json‘, ‘js‘, ‘less‘, ‘html‘, ‘lib‘]);

gulp.task(‘server‘,[‘build‘], function () {
    $.connect.server({
        root:[app.devPath],
        livereload:true,
        port:1234
    });
    open(‘http://localhost:1234‘);

    gulp.watch(app.srcPath + ‘script/**/*.js‘, [‘js‘]);
    gulp.watch(app.srcPath + ‘**/*.html‘, [‘html‘]);
    gulp.watch(app.srcPath + ‘data/**/*.json‘, [‘json‘]);
    gulp.watch(app.srcPath + ‘image/**/*‘, [‘image‘]);
    gulp.watch(app.srcPath + ‘style/**/*.less‘, [‘less‘]);
    gulp.watch(app.srcPath + ‘bower_components/**/*.js‘, ‘lib‘);
});

gulp.task(‘default‘, [‘server‘]);

安装angularjs 依赖及相关依赖

"dependencies": {
    "angular": "1.5.8",
    "angular-ui-router": "ui-router#0.3.1",
    "angular-cookies": "1.5.8"
 }

结束语

感觉bower与gulp是很强大而且很实用的工具,bower能很方便的解决依赖问题,gulp自动化更新发布,在开发中提供了很大的便利

附目录结构图

技术分享图片

以上是关于Angular js 单页应用环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

使用 Vue + Flask 搭建单页应用

vue开发(开发环境+项目搭建)

vue.js在windows本地下搭建环境和创建项目

Angular JS 仿拉勾网 WebApp 开发移动端单页应用

Angular JS仿拉勾网 WebApp 开发移动端单页应用

CK2104-Angular JS 仿拉勾网 WebApp 开发移动端单页应用