首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在构造函数角2中调用类而不声明类

如何在构造函数角2中调用类而不声明类
EN

Stack Overflow用户
提问于 2017-06-11 22:35:07
回答 2查看 145关注 0票数 0

我正在尝试使用Ionic 2的NFC模块。这是我的代码:

nfc-sn.ts:

代码语言:javascript
复制
    import {Component} from '@angular/core';
    import {IonicPage, NavController, NavParams, Platform} from 'ionic-angular';
    import { Device } from '@ionic-native/device';
    import {NFC, Ndef} from '@ionic-native/nfc';

    @IonicPage()
    @Component({
        selector: 'nfc-scan',
        templateUrl: 'nfc-scan.html',
    })
    export class NfcScan {
        @ViewChild(Nav) nav: Nav;
NFC: NFC;

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

        }

    // NFC Scanning
        checkNFC()
        {
            this.NFC.enabled()
                .then(() => {
                    this.addListenNFC();
                })
                .catch(err => {
                    console.log(err);
                });
        }
    }

nfs-can.html

代码语言:javascript
复制
<ion-content padding>
    <button on (click)="checkNFC()">Scan NFC</button>
</ion-content>

当我运行应用程序时,我得到了错误:

属性'enabled‘在’type on‘上不存在。

我知道我并没有在NFC的构造函数中声明nfc。但是当我这样做的时候,页面甚至不会全部加载。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-13 23:20:43

我终于找到了解决这个问题的办法。事实证明,如果不在要使用类的构造函数中声明类,就不能使用类。

在我的例子中,问题是,我在我的机器(Macbook)浏览器中运行这个应用程序,而NFC插件只能在支持NFC的手机上实例化(比如摄像头插件)。尽管如此,Ionic现在提供了以一种方式模拟插件的能力,这样您就可以在您的机器浏览器中使用它们。

要在浏览器和离子服务会话中使用Ionic本地插件,只需扩展原始插件类并覆盖您想要模拟的方法。

来源:https://ionicframework.com/docs/native/browser.html

希望它能帮助像我这样的人。

票数 1
EN

Stack Overflow用户

发布于 2017-06-12 10:51:10

当页面未加载时,通常会在控制台上看到输出。确保在构造函数中使用私有nfc : NFC;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44489374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档