2016-02-21 3 views

ответ

1

Красота Angular 2 заключается в том, что теперь она использует зоны, поэтому людям не нужно переписывать материал по-угловому (как и вся библиотека ng-cordova), потому что Angular 2 знает материал, который выполняется в его контексте ,

Чтобы использовать камеру (или любой другой плагин cordova), вы можете перейти и прочитать нормальную документацию cordova https://github.com/apache/cordova-plugin-camera#module_camera.getPicture. Вы можете вызвать getPicture с камерами, 1 - вызвать камеру, 0 - вызвать библиотеку (уже существующие фотографии). Ссылка содержит документы для Camera.PictureSourceType: enum.

Вы можете использовать этот плагин в службе @Injectable() и вводить его в каждый компонент, который вам нужен. Также под вашим «классом экспорта» вы можете «объявить var navigator: any», поэтому машинопись не будет жаловаться.

Вот весь код, который я использую для доступа к камере: http://prntscr.com/a6xvzq

+0

Это здорово знать ! –

+0

Не должно ли что-то импортированное для приложения иметь доступ к «камере» .navigator? –

+0

, когда вы плагин cordova add cordova-plugin-camera, у вас есть объект навигатора, доступный в любом месте документа –

0

Важно Получить плагин на: https://ionicframework.com/docs/native/media-capture/

Adn попробовать этот код:

import { Component } from '@angular/core'; 
import { IonicPage, NavController, NavParams } from 'ionic-angular'; 
import { MediaCapture, MediaFile, CaptureError, CaptureVideoOptions } from 'ionic-native'; 


@IonicPage() 
@Component({ your component's' 
}) 
export class yourPage { 

    constructor(public navCtrl: NavController, public navParams: NavParams) { 

    } 

    ionViewDidLoad() { 
    console.log('ionViewDidLoad PageLoaded'); 

    //call function camera 
    this.GetVideo(); 
    } 
    //Function open camera on View is full loaded. 
    public GetVideo() { 
    let options: CaptureVideoOptions = { limit: 1 }; 
    MediaCapture.captureVideo(options).then(
     (data: MediaFile[]) => console.log(data), 
     (err: CaptureError) => console.error(err) 
    ); 

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