Capacitor 插件
对于 Ionic 开发者来说,开始使用 Capacitor 是相当直接的。向项目添加插件与添加你可能需要的任何依赖项没有区别。
安装
要安装插件,找到你想要使用的插件并使用你的包管理器(如 npm)进行安装:
# 安装 Capacitor 插件
$ npm install @capacitor/camera
用法
安装后,插件可以被导入到组件中,你可以直接从代码中调用原生功能。
以相机插件为例,首先安装它:
- JavaScript
- Angular
- Vue
- React
import { Camera, CameraResultType } from '@capacitor/camera';
const takePicture = async () => {
const image = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: CameraResultType.Uri
});
const imageUrl = image.webPath;
imageElement.src = imageUrl;
};
import { Component } from '@angular/core';
import { Camera, CameraResultType } from '@capacitor/camera';
@Component({...})
export class CameraComponent{
public imageSrc = '';
async takePicture() {
const image = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: CameraResultType.Uri
});
const imageUrl = image.webPath;
this.imageSrc = imageUrl;
};
}
<template>
...
</template>
<script setup lang="typescript">
import { ref } from 'vue';
import { Camera, CameraResultType } from '@capacitor/camera';
const imageSrc = ref('');
const takePicture = async () => {
const image = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: CameraResultType.Uri
});
const imageUrl = image.webPath;
imageSrc.value = imageUrl;
};
</script>
import { Camera, CameraResultType } from '@capacitor/camera';
import { useState } from 'react';
export function CameraComponent() {
const [imageSrc, setImageSrc] = useState('');
const takePicture = async () => {
const image = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: CameraResultType.Uri
});
const imageUrl = image.webPath;
setImageSrc(imageUrl);
};
return (...)
}