我无法在装箱中显示数据

时间:2018-12-13 20:02:44

标签: javascript node.js socket.io angular5

我在客户端使用main.js文件。

 var SelectChat = angular.module('SelectChat', 
['ngRoute']).config(['$routeProvider',function($routeProvider){
$routeProvider.when("/",{
    templateUrl: 'index.html',
    controller: 'NameInfo'
});
}]).factory('socket',['$rootScope',function ($rootScope) {
var port = 8080;
var socket = io.connect('http://localhost:' + port);

return {
    on: function(eventName, callback) {
        var args = arguments;
        socket.on(eventName,callback);


    },
    emit: function(eventName,data){
        socket.emit(eventName,data);
    }
}
}]);
SelectChat.controller('NameInfo',function($scope,socket,$rootScope){
 socket.on('allMessage',function(date){

$scope.nameChat = date.rows[0].nameChat;
console.log($scope.nameChat + "   <============");
});

index.html

<html>
<head>
<meta charset="utf-8">
<title>chat</title>
<script src="javascripts/socket.io.js"></script>
script src="javascripts/jquery.js" charset="utf-8"></script>
<script src="javascripts/angular.js"></script>
<script src="javascripts/angular-route.js"></script>

<script src="javascripts/main.js" charset="utf-8"></script>
<link href="stylesheets/main.css" rel="stylesheet">
<!-- Здесь можете подключить ваш main.css -->
</head>
<body >
<header >
<h1>Chat</h1>
</header>
<main>
<div ng-app="SelectChat" ng-controller="NameInfo">
<p>Привет</p>
<p>{{nameChat}}/</p>
<p><span ng-bind="nameChat">{{nameChat}}</span></p>
</div>
<div ng-app="hello" ng-controller="a">
<p>{{name}}</p>
</div>
</main>
<footer>
<input type="text" name="text" size="100">
<button type="button" name="button" id="sendMsg">Отправить</button>
</footer>
</body>
</html>

我的问题,我无法在客户端$ scope上显示。

答案:

socket.emit(eventName, data, function() {
        var args = arguments;
        $rootScope.$apply(function() {
            if (callback) {
                callback.apply(socket, args);
            }
        });
    })

但不工作,情况没有改变。 此代码未显示在DB的客户端数据上。 我决定在socket.on的客户端上进行测试socket.on,我编写console.log(db的信息),我获取数据并在浏览器的控制台中显示,但是页面上未显示在客户端的数据。 我不了解逻辑工作。

0 个答案:

没有答案