非常简单的问题
我正在尝试ang 2和离子2。
使用以下代码 -
主文件 -
/// <reference path="../../../node_modules/@angular/platform-browser/src/browser.d.ts" />
import {Component} from '@angular/core';
import {Platform} from 'ionic-angular';
import {NavController} from 'ionic-angular';
import {Network} from 'ionic-native'
@Component({
templateUrl: 'build/pages/items-map/items-map.html'
})
export class ItemsMap {
constructor(private platform : Platform) {
console.log(navigator.Connection);
}
}
每当我使用gulp build构建项目时,我都会 -
错误TS2339:“导航器”类型中不存在属性“连接”。
有任何帮助吗?我知道记录了一些更类似的问题,但没有一个有任何确定的答案
答案 0 :(得分:2)
如果您将其更改为&#34; navigator['connection']
&#34;这可能会解决问题,或者有人建议&#34; navigator.type
&#34;。
但是我在你的代码中看到了一个小问题,你还没有声明&#34; navigator
&#34;!我建议你在@Component decorator
之上进行,按如下方式添加:
declare var navigator;
@Component decorator({
.....
})
然后更改为&#34; navigator.type&#34;或者#&#34;导航器[&#39;连接&#39;],无论什么适合你!
希望这有帮助。
答案 1 :(得分:1)
这是TypeScript定义问题。它需要插件的TypeScript定义。使用npm进行安装。
npm install @ types / cordova-plugin-network-information --save
如果它不起作用,请尝试Network.type
而不是navigator.connection
。
答案 2 :(得分:0)
看起来您已经导入了Network类,因此您可以通过调用Network.connection
来获取连接类型。此属性的基础代码将返回navigator.connection.type
。
因为这种方式是通过Ionic的TypeScript声明类(network.d.ts)访问它,所以不会再出现错误。
注意,使用Network类时,请务必将Cordova插件cordova-plugin-network-information
添加到config.xml文件中。
示例强>
import {Component} from '@angular/core';
import {Platform} from 'ionic-angular';
import {NavController} from 'ionic-angular';
import {Network} from 'ionic-native'
@Component({
templateUrl: 'build/pages/items-map/items-map.html'
})
export class ItemsMap {
constructor(private platform : Platform) {
console.log(Network.connection);
}
}