2016-06-06 4 views
1

Я хочу сохранить дату на сервере firebase с созданной сервером меткой времени с использованием Firebase-модуля Firebase.ServerValue.TIMESTAMP.Как получить временную метку сервера Firebase?

Как настроить для импорта Firebase в качестве модуля в проект angular2.

Я использую Angular2, angular-cli, angularFire2 и т. Д. Ниже приведены настройки конфигурации.

System-config.ts 
/** Map relative paths to URLs. */ 
const map: any = { 
    firebase: 'vendor/firebase/lib/firebase-web.js', 
    angularfire2: ' vendor/angularfire2' 
}; 
/** User packages configuration.*/ 
const packages: any = { 
     angularfire2: { 
     defaultExtension: 'js', 
     main: 'angularfire2.js' 
     } 
}; 

радиально-CLI-build.js

/* global require, module */ 
var Angular2App = require('angular-cli/lib/broccoli/angular2-app'); 
module.exports = function(defaults) { 
    return new Angular2App(defaults, { 
    vendorNpmFiles: [ 
     'systemjs/dist/system-polyfills.js', 
     'systemjs/dist/system.src.js', 
     'zone.js/dist/**/*.+(js|js.map)', 
     'es6-shim/es6-shim.js', 
     'reflect-metadata/**/*.+(js|js.map)', 
     'rxjs/**/*.+(js|js.map)', 
     '@angular/**/*.+(js|js.map)', 

     // below are the AngularFire entries 
     'angularfire2/**/*.js', 
     'firebase/lib/*.js'  
    ] 
    }); 
}; 
+0

Вы решили это? Я видел https://github.com/angular/angularfire2/issues/211, но не знаю, как реализовать. Если у вас есть решение, вы можете отправить его, пожалуйста? – dibs

+0

Я решил проблему, переключившись на firebase 3 API. На самом деле я задал этот вопрос разработчикам, и они указали мне на новейший API. Какую версию firebase вы используете? – ravi

+0

Я не уверен, так как я все еще просто обнимаю все это угловое/firebase, но это от package.json: «angularfire2»: «^ 2.0.0-beta.0» – dibs

ответ

3

Используя Angularfire2, Угловое 2 и угловой консоли, следующее решение работает для меня.

Во-первых, убедитесь, что импортирован firebase с:

import * as firebase from 'firebase'; 

Далее использовать старый способ получения штампа времени, например:

let dateNow = firebase.database.ServerValue.TIMESTAMP; 
console.log(dateNow); 

Наконец, откройте SRC/typings.d. ts и add:

declare namespace firebase.database.ServerValue { 
    let TIMESTAMP: any; 
} 

Последняя часть была для меня трюком и отличалась от большинства решений floatin g, которые не используют специфическую настройку OP.

+0

Его все еще возвращает объект, и у меня нет файла 'src/typings.d.ts' в моем приложении, я также использую угловой 2. Есть идеи –

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