Skip to content

Commit 5bf9a70

Browse files
committed
前端加上requirejs模块化
1 parent a2aeaa3 commit 5bf9a70

File tree

11 files changed

+1187
-2
lines changed

11 files changed

+1187
-2
lines changed

public/app/app.html

-2
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,6 @@
7474

7575
<div ng-view></div>
7676

77-
78-
7977
<script src="js/app/controllers.js"></script>
8078
<script src="js/app/topic.js"></script>
8179
<script src="js/app/header.js"></script>

public/app/req.html

+88
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
<!DOCTYPE html>
2+
<html lang="zh-CN" >
3+
<meta charset='utf-8'>
4+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
5+
<title>money</title>
6+
<base href="/" />
7+
<link href="css/bootstrap.css" rel="stylesheet">
8+
<link href="css/bootstrap-theme.css" rel="stylesheet">
9+
<link href="css/index.css" rel="stylesheet">
10+
<!-- <script src="js/jquery-1.10.2.min.js"></script>
11+
<script src="js/bootstrap.js"></script>
12+
<script src="js/angular.min.js"></script>
13+
<script src="js/angular-route.min.js"></script> -->
14+
<script src="/socket.io/socket.io.js"></script>
15+
<script>
16+
var xueqiuUrl="key=47bce5c74f&access_token=S8nfhytJNtRNHoV9ntmtHY&_=1392196535991";
17+
//雪球接口长变化的参数
18+
</script>
19+
</head>
20+
<body ng-app="ngView" ng-controller='allCtrl'>
21+
<header class="navbar navbar-inverse navbar-fixed-top bs-docs-nav" role="banner" ng-controller='headerCtrl'>
22+
<div class="container">
23+
<div class="navbar-header">
24+
<a href="/app/app.html#/index" class="navbar-brand">Money</a>
25+
</div>
26+
<nav class="navbar-collapse bs-navbar-collapse" role="navigation">
27+
<ul class="nav navbar-nav">
28+
<li>
29+
<a href="/app/app.html#/index">首页</a>
30+
</li>
31+
<li class="dropdown">
32+
<a href="#" class="dropdown-toggle" data-toggle="dropdown">广场<b class="caret"></b></a>
33+
<ul class="dropdown-menu">
34+
<li><a href="/baike">行情</a></li>
35+
<li><a href="/baike">行情</a></li>
36+
<li><a href="/baike">行情</a></li>
37+
<li><a href="/baike">行情</a></li>
38+
</ul>
39+
</li>
40+
41+
<li ng-show="showPeople">
42+
<a href="app/app.html#/people/{{ name }}">个人主页</a>
43+
</li>
44+
45+
</ul>
46+
47+
<div class="navbar-form navbar-right" id="isloginOut" ng-show="ajaxLogin">
48+
<div class="form-group ">
49+
<input type="text" placeholder="用户名" class="form-control" id="headName">
50+
</div>
51+
<div class="form-group">
52+
<input type="password" placeholder="密码" class="form-control" id="headPassword">
53+
</div>
54+
<button type="submit" class="btn btn-success" id="headerLogin">登陆</button>
55+
<a href="/login" class="btn btn-default" role="button">注册</a>
56+
</div>
57+
58+
<ul class="nav navbar-nav navbar-right" id="islogin" ng-show="nameLogin">
59+
<li class="dropdown">
60+
<a href="#" class="dropdown-toggle" data-toggle="dropdown"><span id="headShowName" top="top" login="in">{{ name }}</span><b class="caret"></b></a>
61+
<ul class="dropdown-menu">
62+
<li><a href="app/app.html#/setting">设置</a></li>
63+
<!-- <li><a id="loginOut" loginOut="target"">注销</a></li> -->
64+
<li><a id="loginOut" ng-click="loginOut()">注销</a></li>
65+
</ul>
66+
</li>
67+
</ul>
68+
69+
</nav>
70+
</div>
71+
</header>
72+
<!--
73+
<script src="js/header.js"></script> -->
74+
75+
<div ng-view></div>
76+
<script src="js/require.js" data-main="js/req/controllers.js"></script>
77+
78+
79+
<!-- <script src="js/app/controllers.js"></script>
80+
<script src="js/app/topic.js"></script>
81+
<script src="js/app/header.js"></script>
82+
<script src="js/app/login.js"></script>
83+
<script src="js/app/index.js"></script>
84+
<script src="js/app/people.js"></script>
85+
<script src="js/app/stock.js"></script>
86+
<script src="js/app/setting.js"></script> -->
87+
</body>
88+
</html>

public/js/req/app.js

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
define(['angular','angularRoute'], function(angular, inventory) {
2+
return app=angular.module('ngView', ['ngRoute']);
3+
});

public/js/req/controllers.js

+69
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
requirejs.config({
2+
//默认相对"js/lib"解析模块ID
3+
baseUrl: '../js',
4+
//如果模块ID以"app"开始,会相对js/app目录解析,path config是相对 baseUrl 解析的,而且不用包含".js",因为 path config 指向的可能是目录
5+
paths: {
6+
jquery: 'jquery-1.10.2.min',
7+
angular:'angular.min',
8+
angularRoute:'angular-route.min',
9+
bootstrap:'bootstrap',
10+
header:'req/header',
11+
app:'req/app',
12+
user:'req/factory/user',
13+
watchAndFens:'req/factory/watchAndFens',
14+
textExtract:'req/factory/textExtract',
15+
topic:'req/factory/topic',
16+
index:'req/index'
17+
},
18+
shim: {
19+
'angular': {exports: 'angular'},
20+
'angularRoute' : {deps:['angular']},
21+
}
22+
});
23+
24+
requirejs(['jquery','angular','angularRoute','bootstrap','header','app','index'],function ($,angular,angularRoute,bootstrap,header,app,indexCtrl) {
25+
//顶部作用域
26+
app.controller('allCtrl', function ($scope){
27+
$scope.$on("loginIn",function (event,msg) {
28+
$scope.$broadcast("loginInok", msg);
29+
});
30+
});
31+
32+
//路由
33+
app.config(function($routeProvider) {
34+
$routeProvider.when('/index', {
35+
templateUrl: 'app/index.html',
36+
controller:indexCtrl
37+
});
38+
// $routeProvider.when('/login', {
39+
// templateUrl: 'app/login.html',
40+
// controller:loginCtrl
41+
// });
42+
// $routeProvider.when('/stock/:uid', {
43+
// templateUrl: 'app/stock.html',
44+
// controller:stockCtrl
45+
// });
46+
// $routeProvider.when('/people/:name', {
47+
// templateUrl: 'app/people.html',
48+
// controller:peopleCtrl
49+
// });
50+
// $routeProvider.when('/setting', {
51+
// templateUrl: 'app/setting.html',
52+
// controller:settingCtrl
53+
// });
54+
});
55+
56+
57+
});
58+
59+
60+
61+
62+
63+
64+
65+
66+
67+
68+
69+

public/js/req/factory/textExtract.js

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
define(["angular", "app"], function(angular, app) {
2+
app.factory('textExtract', [function() {
3+
var textExtract=function(comment,name){
4+
//正则获取@ 的用户,用户名3-15个英文或数字
5+
var aboutPeople=comment.match(/@\w{3,15}\s|@\w{3,15}$/g);
6+
if(!!aboutPeople){
7+
for(var i1=0,l1=aboutPeople.length;i1<l1;i1++){
8+
aboutPeople[i1]=aboutPeople[i1].replace(" ","").replace(/@/,"");
9+
}
10+
}else{
11+
aboutPeople=[];
12+
}
13+
//正则获取$$ 的股票代码/sh[0-9]{6}|sz[0-9]{6}/i
14+
var aboutStockcode=comment.match(/\$sh[0-9]{6}\$|\$sz[0-9]{6}\$/ig);
15+
if(!!aboutStockcode){
16+
for(var i2=0,l2=aboutStockcode.length;i2<l2;i2++){
17+
aboutStockcode[i2]=aboutStockcode[i2].replace(/\$/g,"");
18+
}
19+
}else{
20+
aboutStockcode=[];
21+
}
22+
//正则获取股票名称
23+
var aboutStockName=comment.match(/\$[\u4e00-\u9fa5]{2,6}\$/ig);
24+
if(!!aboutStockName){
25+
for(var i3=0,l3=aboutStockName.length;i3<l3;i3++){
26+
aboutStockName[i3]=aboutStockName[i3].replace(/\$/g,"");
27+
}
28+
}else{
29+
aboutStockName=[];
30+
}
31+
//前端解析的对象
32+
var commentObj={
33+
topic:comment,
34+
name:name,
35+
aboutPeople:aboutPeople,
36+
aboutStockcode:aboutStockcode,
37+
aboutStockName:aboutStockName
38+
};
39+
return commentObj;
40+
};
41+
return textExtract;
42+
}]);
43+
44+
});

0 commit comments

Comments
 (0)