标签: ionic3

使用TypeScript中的Ionic 2中的第三方cordova插件

在我的Ionic 2应用程序(TypeScript)中,我使用插件,例如Camera插件ionic-native可以正常工作.现在我想用BackgroundMode plugin: https://github.com/katzer/cordova-plugin-background-mode.我阅读了README,我按照描述进行了安装.

在Usage下,它说插件可以像这样使用:

cordova.plugins.backgroundMode.enable();
Run Code Online (Sandbox Code Playgroud)

在我的IDE(Atom)中,当我键入它时,它说它无法找到cordova.

我搜索了很多关于cordova插件和Ionic 2的内容,并且在某些情况下他们使用 navigator.somePlugin.someFunction()(window.navigator如果我理解正确的话,这个对象),但这对我来说也不起作用.我console.log在我的应用程序和Chrome设备检查器中做了一个显示:

JSON.stringify(window.navigator, null, 2)
{
  "app": {},
  "camera": {
    "DestinationType": {
      "DATA_URL": 0,
      "FILE_URI": 1,
      "NATIVE_URI": 2
    },
    "EncodingType": {
      "JPEG": 0,
      "PNG": 1
    },
    "MediaType": {
      "PICTURE": 0,
      "VIDEO": 1,
      "ALLMEDIA": 2
    },
    "PictureSourceType": {
      "PHOTOLIBRARY": 0,
      "CAMERA": 1,
      "SAVEDPHOTOALBUM": 2
    },
    "PopoverArrowDirection": {
      "ARROW_UP": 1,
      "ARROW_DOWN": 2,
      "ARROW_LEFT": 4,
      "ARROW_RIGHT": 8,
      "ARROW_ANY": 15
    },
    "Direction": {
      "BACK": 0,
      "FRONT": …
Run Code Online (Sandbox Code Playgroud)

typescript ionic-framework ionic2 ionic3 angular

8
推荐指数
1
解决办法
6824
查看次数

在Ionic2应用程序中保存API url等设置的位置?

我有几个设置应该在配置文件中.

例如:API的URL

Ionic 2中最好的地方在哪里?

typescript ionic-framework ionic2 ionic3 angular

8
推荐指数
2
解决办法
5695
查看次数

滚动到Ionic 2中ListiVew的特定项目

我想滚动到离子2中列表视图中的特定项目.我有一个列表视图绑定到数组.

export class TestPage {
    @ViewChild(Content) content: Content;
    public items: Array<Object> = [];

    ionViewWillEnter() {
        console.log(this.navParams.data);
        this.customService.getArray(this.params.index).then((items) => {
            this.items = items;
                //scroll to item
                // this.content.scrollTo()
        });
     }
}
Run Code Online (Sandbox Code Playgroud)

这是观点:

<ion-list [virtualScroll]="items" approxItemHeight="120px" approxItemWidth="100%" 
    class="items-listview list list-md">
  <button class="items-listview-item item item-md" *virtualItem="let item">
    <div class="items-listview-text">
        {{ item.text }}<span>{{item.index}}</span>
    </div>
  </button>
</ion-list>
Run Code Online (Sandbox Code Playgroud)

我看到scrollTo只支持位置,即顶部和左侧,但不支持元素本身.如何滚动列表视图项目(例如项目编号150)本身?如何获得150号项目的位置并将其传递给scrollTo?

typescript ionic-framework ionic2 ionic3 angular

8
推荐指数
2
解决办法
8790
查看次数

选项卡按钮存在但不可见

我有一个带有两个标签的标签组件.按钮是可单击的,单击按钮所在的位置正确显示选项卡内容,但按钮不可见.

<ion-header>
  <ion-navbar>
    <ion-title>{{coupon.title}}</ion-title>
  </ion-navbar>
</ion-header>

<ion-content>
  <div class="coupon-image-container">
    <img src={{coupon.mainImage}}/>
    <button ion-button class="left">Redeem</button>
  </div>
  <ion-tabs class="coupon-tabs">
    <ion-tab tabIcon="map" [root]="mapTab" tabTitle="Map"></ion-tab>
    <ion-tab tabIcon="information" [root]="infoTab" tabTitle="Info"></ion-tab>
  </ion-tabs>
</ion-content>
Run Code Online (Sandbox Code Playgroud)

我不认为任何其他代码是必要的,但如果需要我会提供更多.就像我说的那样mapTab,infoTab组件的内容显示得很好,点击标签按钮应该在哪里切换它们,但按钮只是空白.

编辑:以防万一有人要问,如果我删除除组件组件之外的组件中的所有其他内容,它仍然会做同样的事情:

<ion-tabs class="coupon-tabs">
  <ion-tab tabIcon="map" [root]="mapTab" tabTitle="Map"></ion-tab>
  <ion-tab tabIcon="information" [root]="infoTab" tabTitle="Info"></ion-tab>
</ion-tabs>
Run Code Online (Sandbox Code Playgroud)

所以它绝对与其他内容无关.

编辑:我做了一个显示问题的GIF:http://g.recordit.co/WDkjkSz6re.gif

编辑:这是ion-tab上的样式

element.style {
}
main.css:25224
.coupon-tabs ion-tab {
    color: black;
    top: 56px;
}
main.css:5136
ion-tab.show-tab {
    display: block;
}
main.css:5145
ion-app, ion-nav, ion-tab, ion-tabs, .app-root, .ion-page {
    contain: strict;
}
main.css:5132 …
Run Code Online (Sandbox Code Playgroud)

ionic2 ionic3

8
推荐指数
1
解决办法
2723
查看次数

Ionic 3中虚拟VS无限滚动的区别和用例有何不同

我已经通过Ionic 3文档,我试图了解它们之间的区别

https://ionicframework.com/docs/api/components/virtual-scroll/VirtualScroll/

https://ionicframework.com/docs/api/components/infinite-scroll/InfiniteScroll/

我看到他们使用不同的组件,虽然他们展示了InfiniteScroll的一个例子,但没有VirtualScroll的例子,它的设置也看起来比较棘手.

两者之间有什么区别,什么是可能的用例何时使用其中一个?

typescript ionic3 angular

8
推荐指数
1
解决办法
2984
查看次数

离子3图像滑块在手动滑动后停止自动播放

Ionic 3图像滑块自动播放效果很好,但是当我手动滑动图像时,自动播放停止工作.下面是我的离子3代码.我真的被困在这里..

    slideData = [{ image: "../../assets/img1.jpg" },{ image: "../../assets/img2.jpg" },{ image: "../../assets/img3.jpg" }]
Run Code Online (Sandbox Code Playgroud)

html代码如下

  <ion-slides  class="slide-css" autoplay="100" loop="true" speed="100" pager="true" autoplayDisableOnInteraction = "false">
  <ion-slide *ngFor="let slide of slideData">
  <img src="{{slide.image}}" />
  </ion-slide>
  </ion-slides>
Run Code Online (Sandbox Code Playgroud)

typescript ionic2 ionic3 angular

8
推荐指数
2
解决办法
3643
查看次数

离子3-显示base64图像,清理不安全的url值safevalue必须使用[property] = binding

我想为个人资料图片显示base64图像.图像作为二进制数据存储在数据库中,我使用btoa()将这个二进制数据转换为base64.现在我想将这个base64图像绑定到img src我尝试了很多方法但它不起作用,请帮助这里是我的代码

profile.ts代码:

profilePicture(binImage)
{
    if(binImage != null)
    {
        var imageData = btoa(binImage);
        //console.log("Base64 Image: ",imageData);
        this.displayImage = imageData;
    }
}
Run Code Online (Sandbox Code Playgroud)

profile.html代码:

<div class="profile-picture big-profile-picture" *ngIf="displayImage">
    <img src="data:Image/*;base64,{{displayImage}}">
</div>
Run Code Online (Sandbox Code Playgroud)

检查此图片,它不显示图片

它显示错误"清理不安全的url值safevalue必须使用[property] = binding"

base64 image ionic-framework ionic3 angular

8
推荐指数
1
解决办法
1万
查看次数

firebase社交登录未重定向到应用程序,离子3,ios

我试图在"firebase"认证的帮助下在我的离子3应用程序中实现社交登录.我跟着这个艺术的https://javebratt.com/ionic-social-login-firebase/

我安装了所有的插件(cordova-plugin-browsertab,cordova-plugin-inappbrowser ..etc)并完成了与文章完全相同的操作.

然后我在android和ios设备上运行了应用程序.在Android设备中,facebook/google登录页面在"在应用程序浏览器中"打开,并在登录过程后成功重定向到应用程序.一切正常.

但在iPhone中,facebook/google登录页面在新的safari浏览器实例中打开,登录后重定向到localhost,并且不会重定向回应用程序.

谁能帮我这个?

谢谢

ios cordova firebase firebase-authentication ionic3

8
推荐指数
1
解决办法
2731
查看次数

离线执行失败,任务':app:transformClassesWithDesugarForRelease'

当我尝试在笔记本电脑和Ionic的Pro仪表板上构建Android时出现此错误.

[04:27:55]: ? FAILURE: Build failed with an exception.
[04:27:55]: ? * What went wrong:
[04:27:55]: ? Execution failed for task ':app:transformClassesWithDesugarForRelease'.
[04:27:55]: ? > com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: Error while executing java process with main class com.google.devtools.build.android.desugar.Desugar with arguments {--input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/43.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/45.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/49.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/51.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/37.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/39.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/3.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/5.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/28.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/30.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/47.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/49.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/19.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/21.jar --input /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/44.jar --output /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/desugar/release/46.jar --classpath_entry /builds/user/anonymous-social/platforms/android/CordovaLib/build/intermediates/intermediate-jars/release/classes.jar --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/classes/release --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/0.jar --classpath_entry /builds/user/anonymous-social/platforms/android/app/build/intermediates/transforms/stackFramesFixer/release/1.jar …
Run Code Online (Sandbox Code Playgroud)

android cordova ionic-framework ionic2 ionic3

8
推荐指数
1
解决办法
997
查看次数

科尔多瓦Android不允许向fb-messenger打开列入白名单的意图

我有一个适用于Android的Ionic Cordova应用程序,其中有一个指向Facebook Messenger的按钮:

<a href="https://m.me/my-fb-page" target="_blank"><img src="assets/images/messenger.svg" /></a>
Run Code Online (Sandbox Code Playgroud)

轻按时,屏幕上没有任何内容。我一直通过logcat收到此错误:

CordovaWebViewImpl: Blocked (possibly sub-frame) navigation to non-allowed URL: intent://user/xxxxxxxxxxxxx/?intent_trigger=mme&nav=discover#Intent;scheme=fb-messenger;package=com.facebook.orca;end
Run Code Online (Sandbox Code Playgroud)

我安装了cordova-plugin-whitelist。

config.xml的内容:

    ...
    <content src="index.html" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-navigation href="*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <allow-intent href="fb-messenger:*" />
    <platform name="android">
        <allow-intent href="market:*" />
        <allow-intent href="fb-messenger:*" />
        ...
Run Code Online (Sandbox Code Playgroud)

我已经尝试了许多用于允许意图,访问和允许导航的选项。

该问题与Facebook Messenger并不特别相关,我在打开其他外部(支付)应用程序时也遇到了问题

android facebook cordova cordova-plugins ionic3

8
推荐指数
1
解决办法
458
查看次数