Таким образом, моя страница зависит от того факта, что область $ имеет всю информацию. У меня есть много {{ information }}
на странице. На контроллере backend узла я получаю информацию из базы данных и отправляю ее во внешний интерфейс, но область $ задается в другом файле. Трудно объяснить, что я пытаюсь сделать.
Вот мой файл index.js:
app.get('/page', function (req, res){
var info = db.getInfo();
res.render('page', {
information: info
});
});
Затем страница будет отображаться, но как мне передать информацию в область $.
Маршрут, который вы установили в своем NodeJS, должен быть доступен через $ http в угловом режиме. Маршрутизация URL-адресов должна обрабатываться в интерфейсном приложении с использованием ng-route.
Если вы хотите отобразить свою страницу в угловом размере через сервер, вам нужно будет заставить сервер генерировать угловой код, чтобы это сделать... Это, однако, просто оскорбительно. Лучше всего позволить угловой ручке извлекать эти данные.
Использование услуги angularjs:
angular.module('yourApp')
.service('pageLoader', function($http) {
var baseUrl = ''; // this will be the url for your server. Normally
// 'localhost' or something similar if it is a test
// environment
return this.loadPage = function() {
return $http.get(baseUrl + '/page');
}
})
.controller('PageCtrl', function($scope, pageLoader) {
$scope.page = null;
$scope.loadPage = function() {
pageLoader.loadPage().then(function(data) {
$scope.page = data;
})
}
});
Это просто, чтобы дать вам представление о том, как это сделать. Есть много разных примеров сервисов $ http, если вы выполняете поиск.
Также измените 'render' на 'send' в nodejs.
EDIT: Я предполагаю, что вы используете угловое внешнее приложение, а не какую-то другую систему шаблонов. Вы должны отправлять эту информацию и использовать угловые для создания страницы с этой информацией.