在浏览器中测试 Ionic App

可以在浏览器中测试本机设备功能,如 Camera,Vibration 等,其中许多功能都可以在 Ionic Native 的文档中找到。这是一个固有的局限性,因为 Cordonic 是 Ionic 依赖于能够访问设备的原生 Android,iOS 和 Windows Mobile API 的平台,无法在浏览器上运行。

可以通过模拟本机插件的功能来解决此问题。

这是一个关于如何模拟 Camera 插件的示例 :

继续,在项目根文件夹中创建一个可选文件夹。

cd src
mkdir mocks 
cd mocks 
touch camera-mock.ts 

打开 camera-mock.ts 并复制粘贴以下代码:

export class CameraMock {
    getPicture(params) {
        return new Promise((resolve, reject) => {
            resolve("BASE_64_IMAGE_DATA");
        });
    }
}

接下来打开 src/app.module.ts 并导入模拟类“

import { CameraMock } from "../mocks/camera-mock";

然后将其添加到模块提供程序数组:

@NgModule({
declarations: [
    MyApp,
    HomePage
],
imports: [
    BrowserModule,
    IonicModule.forRoot(MyApp)
],
bootstrap: [IonicApp],
entryComponents: [
    MyApp,
    HomePage
],
providers: [
    StatusBar,
    SplashScreen,
    CameraMock,
    {provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
export class AppModule {}

现在,你可以在导入后在任何组件中使用它。