亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

AngularJS + Node.js + MongoDB開發的基于高德地圖位置的通訊錄

2019-11-20 13:30:51
字體:
來源:轉載
供稿:網友

一、閑扯

有一天班長說了,同學們希望我開發一個可以共享位置的通訊錄,于是自己簡單設計了下功能。包括用戶角色、發表微博、共享位置等等。這次也是有點私心的,為了鍛煉最近看的angularjs,于是果斷選擇Node.js + MongoDB + angular.js的方案。當然,開發Node.js的體會越來越深刻。記得,去年leader告訴我說盡量讓node的每一個服務只支撐一個業務功能,這樣才能更方便的維護。當時特別想把一個Node服務做的特別強大。現在看來leader的做法是對的,我更加傾向于把node服務功能單一化...

二、直接上干貨

數據庫服務部署在阿里云;靜態文件服務器采用的是Github page。

Github項目地址:https://github.com/vczero/OurTimes

線上體驗地址:http://vczero.github.io/tuban/main.html#/

沒圖說個球啊,上圖給大家看看2張截圖:

(1)首頁

(2)通訊錄

 ....更多去線上體驗...

三、項目

總項目: https://github.com/vczero/OurTimes

開發了所需要的服務:https://github.com/vczero/OurTimes/tree/master/server

開了web pc client: https://github.com/vczero/OurTimes/tree/master/client-web

開發了簡易的后臺管理系統:https://github.com/vczero/OurTimes/tree/master/client-admin

歡迎大家fork ,follow和共享代碼,一起構建前端而努力。

四、附上web-pc端Angular的入口文件代碼

復制代碼 代碼如下:

var app = angular.module('app', ['ui.router', 'ngCookies']);
var SERVER_BASE_URL = 'http://127.0.0.1:3000/';
//初始化配置
app.run(['$rootScope', function($rootScope) {
    $rootScope.appName = '圖班網';
    $rootScope.desc = '基于位置的通訊錄';
    $rootScope.author = '鬼謠';
    $rootScope._email = 'wlhmyit@126.com';
}]);

//調用的服務列表
app.constant('ServiceConfig', {
    wei_content: SERVER_BASE_URL + 'wei/get',
    wei_zan: SERVER_BASE_URL + 'wei/zan',
    wei_comment: SERVER_BASE_URL + 'wei/comment',
    wei_create: SERVER_BASE_URL + 'wei/create',
    user_get: SERVER_BASE_URL + 'user/get',
    user_login: SERVER_BASE_URL + 'user/login',
    user_register: SERVER_BASE_URL + 'user/register',
    user_common: SERVER_BASE_URL + 'user/getCommon',
    user_ben: SERVER_BASE_URL + 'user/getBen',
    user_self: SERVER_BASE_URL + 'user/getSelf',
    user_common_update: SERVER_BASE_URL + 'user/updateCommon',
    user_ben_update: SERVER_BASE_URL + 'user/updateBen',
    user_ben_get_name: SERVER_BASE_URL + 'user/singleBen/name',
    user_common_get_nickname: SERVER_BASE_URL + 'user/getCommon/name',
    user_ben_get_realname: SERVER_BASE_URL + 'user/singleBen/name',
    wei_get_token_page: SERVER_BASE_URL + 'wei/getByToken',
    wei_delete: SERVER_BASE_URL + 'wei/delete',
    user_update_password: SERVER_BASE_URL + 'user/updatePassword',
    article_get: SERVER_BASE_URL + 'article/get',
    article_detail: SERVER_BASE_URL + 'article/get/id',
    amap_url: 'http://webapi.amap.com/maps?v=1.3&key=ad925c5003760094713775d64748d872&callback=init'
});
//JSON parse
app.config(['$httpProvider', function($httpProvider) {
    $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
    $httpProvider.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
    $httpProvider.defaults.transformRequest = [function(data) {
        var obj = [];
        for (var key in data) {
            obj.push(key + '=' + data[key]);
        }
        return obj.join('&');
    }];
}]);
//路由配置
app.config(['$stateProvider', '$urlRouterProvider',
function($stateProvider, $urlRouterProvider) {
    /*URL路由*/
    $urlRouterProvider.otherwise("/");
    /*狀態配置*/
    $stateProvider
    //首頁
    .state('index', {
        url: '/',
        views: {
            '': {
                templateUrl: 'views/index/index.html',
            },
            'header@index': {
                templateUrl: 'views/header.html',
                controller: 'HeaderController'
            },
            'footer@index': {
                templateUrl: 'views/footer.html',
                controller: ''
            },
            'weibo@index': {
                templateUrl: 'views/index/weibo.html',
                controller: 'WeiboController'
            },
            'article@index': {
                templateUrl: 'views/index/article.html',
                controller: 'ArticleController'
            },
            'post@index': {
                templateUrl: 'views/index/post.html',
                controller: 'PostWeiboController'
            }
        }
    })
    .state('login', {
        url: '/login',
        views: {
            '': {
                templateUrl: 'views/login/login.html',
                controller: 'LoginController'
            }
        }
    })
    .state('register', {
        url: '/register',
        views: {
            '': {
                templateUrl: 'views/register/register.html',
                controller: 'RegisterController'
            }
        }
    })
    .state('contacts', {
        url: '/contacts',
        views: {
            '': {
                templateUrl: 'views/contacts/contacts.html',
                controller: ''
            },
            'header@contacts': {
                templateUrl: 'views/header.html',
                controller: 'HeaderController'
            },
            'userinfo@contacts': {
                templateUrl: 'views/contacts/userinfo.html',
                controller: 'UserInfoController'
            },
            'map@contacts': {
                templateUrl: 'views/contacts/map.html',
                controller: 'MapController'
            },
            'search@contacts': {
                templateUrl: 'views/contacts/search.html',
                controller: 'SearchUserController'
            }
        }
    })
    .state('ucenter', {
        url: '/ucenter',
        views: {
            '': {
                templateUrl: 'views/ucenter/ucenter.html',
                controller: ''
            },
            'header@ucenter': {
                templateUrl: 'views/header.html',
                controller: 'HeaderController'
            },
            'userWeibo@ucenter': {
                templateUrl: 'views/ucenter/weibo.html',
                controller: 'UcWeiboController'
            },
            'userDetailInfo@ucenter': {
                templateUrl: 'views/ucenter/user.html',
                controller: 'UcUserController'
            },
            'footer@ucenter': {
                templateUrl: 'views/footer.html',
                controller: ''
            }
        }
    })
    .state('article', {
        url: '/article/:id',
        views: {
            '': {
                templateUrl: 'views/article/article.html',
                controller: ''
            },
            'header@article': {
                templateUrl: 'views/header.html',
                controller: 'HeaderController'
            },
            'article_content@article': {
                templateUrl: 'views/article/article_content.html',
                controller: 'ArticleDetailController'
            },
            'footer@article': {
                templateUrl: 'views/footer.html',
                controller: ''
            }
        }
    })
    .state('article_index', {
        url: '/article',
        views: {
            '': {
                templateUrl: 'views/article/article.html',
                controller: ''
            },
            'header@article_index': {
                templateUrl: 'views/header.html',
                controller: 'HeaderController'
            },
            'article_content@article_index': {
                templateUrl: 'views/article/article_content.html',
                controller: 'ArticleDetailController'
            },
            'footer@article_index': {
                templateUrl: 'views/footer.html',
                controller: ''
            }
        }
    });

}]);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品在线视频| 欧美激情一级精品国产| 国产精品美女视频网站| 麻豆一区二区在线观看| 亚洲护士老师的毛茸茸最新章节| 成人妇女免费播放久久久| 亚洲第一精品电影| 亚洲bt天天射| 国内精品视频在线| 欧美电影在线观看| 91免费看片在线| 久久国产精品免费视频| 日韩成人在线视频| 欧美激情免费在线| 啪一啪鲁一鲁2019在线视频| 国产亚洲人成a一在线v站| 中文字幕一区二区三区电影| 正在播放欧美视频| 久久综合亚洲社区| 国产香蕉精品视频一区二区三区| 97婷婷大伊香蕉精品视频| 欧美黑人巨大xxx极品| 国模精品系列视频| 日韩在线免费视频观看| 久久91精品国产91久久跳| 91精品久久久久久久久久久久久久| 亚洲亚裔videos黑人hd| 韩国欧美亚洲国产| 中文字幕免费精品一区| 热草久综合在线| 青青草国产精品一区二区| 亚洲图片在区色| 国产亚洲欧美aaaa| 国外色69视频在线观看| 欧美性猛交xxxxx水多| 欧美整片在线观看| 国产精品天天狠天天看| 欧美成人午夜视频| 欧美日本高清一区| 国产一区二区免费| 久久99久久亚洲国产| 久久视频免费在线播放| 久久久久久高潮国产精品视| 国产亚洲精品久久久久久牛牛| 亚洲精品久久久久中文字幕欢迎你| 国产成人精品电影久久久| 欧美激情2020午夜免费观看| 亚洲男人天堂2019| 国内精品美女av在线播放| 日韩av一区二区在线观看| 亚洲免费高清视频| 亚洲女同性videos| 欧美影院在线播放| 亚洲人成啪啪网站| 成人精品视频99在线观看免费| 欧美日韩精品在线视频| 成人黄色中文字幕| 久久免费高清视频| 亚洲wwwav| 亚洲国产欧美在线成人app| 欧美成人午夜激情在线| 九九久久精品一区| 亚洲电影免费观看高清| 久久韩国免费视频| 色综合久久悠悠| 亚洲香蕉成视频在线观看| 久久精品国产69国产精品亚洲| 亚洲国产精品中文| 欧美孕妇毛茸茸xxxx| 日韩网站免费观看| 狠狠爱在线视频一区| 欧美一级片在线播放| 久久国产天堂福利天堂| 亚洲成人a级网| 亚洲精品丝袜日韩| 国产精品欧美一区二区三区奶水| 一区二区三区四区视频| 亚洲深夜福利视频| 国产剧情久久久久久| 丁香五六月婷婷久久激情| 亚洲精品第一页| 欧美激情女人20p| 精品夜色国产国偷在线| 91在线直播亚洲| 久久99热精品这里久久精品| 久久久中文字幕| 777国产偷窥盗摄精品视频| 精品久久久中文| 亚洲国产精品va在线看黑人动漫| 久久久久久尹人网香蕉| 国产精品美女久久| 日韩在线视频免费观看| 亚洲乱亚洲乱妇无码| 免费97视频在线精品国自产拍| 97在线看免费观看视频在线观看| 亚洲自拍偷拍第一页| 国产精欧美一区二区三区| 国产成人精品在线播放| 久久中文久久字幕| 中文字幕国产精品久久| 亚洲欧美中文日韩v在线观看| 欧美激情欧美狂野欧美精品| 91视频-88av| 亚洲黄色免费三级| 亚洲国产美女精品久久久久∴| 亚洲性69xxxbbb| 欧美激情按摩在线| 91精品国产综合久久香蕉的用户体验| 国产精品久久久久久久久久久久久久| 成人美女免费网站视频| 亚洲激情国产精品| 高跟丝袜一区二区三区| 精品日韩中文字幕| 久久久久日韩精品久久久男男| 岛国av一区二区三区| 成人精品视频99在线观看免费| 日韩中文字幕精品| 欧美日韩另类视频| 国产亚洲欧美视频| 国产精品国内视频| 欧美黄色片在线观看| 琪琪第一精品导航| 国产福利成人在线| 日韩欧亚中文在线| 欧美日韩国产中字| 国产精品一区二区三区久久| 欧美性猛交xxxx偷拍洗澡| 国产精品r级在线| 欧美日韩一区二区在线| 国产精品69久久| 日韩在线观看网站| 国产91色在线|| 国产精品99久久99久久久二8| 精品久久在线播放| 高清欧美电影在线| 欧美激情影音先锋| 精品无人区太爽高潮在线播放| 亚洲欧美综合区自拍另类| 亚洲美女福利视频网站| 国产中文字幕91| 一本一道久久a久久精品逆3p| 欧美精品videofree1080p| 成人精品视频在线| 国内精品模特av私拍在线观看| 久久久久九九九九| 精品美女永久免费视频| 综合网日日天干夜夜久久| 51色欧美片视频在线观看| xvideos国产精品| 欧美老少做受xxxx高潮| 欧美在线视频观看免费网站| 国产婷婷色综合av蜜臀av| 欧美精品激情blacked18| 欧美自拍大量在线观看| 亚洲精品wwww| 成人在线小视频| 亚洲激情国产精品| 欧美大尺度在线观看| 日本精品久久电影| 国产欧美精品一区二区| 国产精品一区二区久久精品| 亚洲福利小视频| 亚洲日本中文字幕免费在线不卡| 亚洲欧美国产日韩天堂区|