2016-06-02 2 views
1

Я пытаюсь построить небольшой facebook вход в систему с угловой 2, но хорошо у меня проблема, после входа в Facebook пользователь будет перенаправлен/домаполучать данные экспресс-сервера с угловым 2

app.get('/home', function (req, res) { 
    res.sendfile(path.join(__dirname, '../', 'views', 'index.html'), { user: req.user}); 
    console.log({ user: req.user}); 
}); 

Я пытаюсь отобразить информацию пользователя на странице углового2, но я все равно становлюсь неопределенным. Консольная запись объекта работает нормально.

Я использовал тот же метод с EJs файлов с помощью res.render и использовать это внутри EJS

<%= user.facebook.name %> 

и она отлично работает. Я попытался использовать {{}} в угловом 2, но не работал. любая помощь пожалуйста?

благодаря

ответ

0

Я бы определил этот элемент, когда развернув приложение. Поскольку этот совет доступен только на вашей странице index.html, я бы использовал следующую обработку.

Обновить файл, который загружает приложения:

import {bootstrap} from '...'; 
import {provide} from '...'; 
import {AppComponent} from '...'; 

export function main(facebookUser) { 
    bootstrap(AppComponent, [ 
    provide('user', { useValue: facebookUser }) 
    ]); 
} 

Обеспечить это значение из файла index.html таким образом:

<script> 
    var facebookUser = '<%= user.facebook.name %>'; 
    System.import('app/main').then((module) => { 
    module.main(facebookUser); 
    }); 
</script> 

Этот вопрос может вас заинтересовать:

0

ok Спасибо за ответы, я нашел ответ на мой вопрос. этот код вызовет api и получит данные пользователя

constructor(private http: Http) { } 

ngOnInit() { 
    this.getUser(); 
} 

getUser() { 
    this.http.get('/api/user') 
     .map((res:Response) => res.json()) 
     .do(data => console.log('data: ' + JSON.stringify(data))) 
     .subscribe(
      data => { this.user = data.user.facebook.name}, 
      err => console.error(err), 
      () => console.log('done') 
     ); 

} 
Смежные вопросы