node.js - socket.io + angularjs + ui-router - data goes missing after changing states -
i using mssql > node.js > socket.io > angularjs/ui-router/angular-socket-io stack.
my issue first time visit state have info beingness displayed, or on refresh, info displayed no problem. when changing states , coming info disappears.
using mssql npm + express emitting info this
io.sockets.on('connection', function (socket) { // run db query on inital app start sql.connect(config, function(err) { if (err) { console.log('there error connectiong sql:'); console.log(err); } else { var request = new sql.request(); request.query('select * a.dbo.b', function(err, recordset) { if (err) { console.log('there error query:' + err); } socket.emit('data', recordset); }); } }); }); i have mill looks this
.factory('socket', function (socketfactory) { var socket = io.connect(window.location.hostname); homecoming socket; }) and within controller have this
socket.on('data', function (data) { // whole bunch of logic manipulating data..... $scope.ctrldata = finalrecordobj; $scope.$digest(); ); the state loops out info of $scope.ctrldata using ng-repeat
on refresh or first time state viewed info fine.... after go anoter state , come gone! ideas appreciated. hope above plenty information.
you should maintain info in service prevent disappearing, what's happening on refresh page controller , service initiated (service os singleton) returns data, when alter state controller refreshed not service, info controller lost , service not provide new 1 because did, hope makes sense
node.js angularjs websocket socket.io angular-ui-router
No comments:
Post a Comment