Плагин реализации динамических c ссылок в приложении ioni c 1 не работает - PullRequest
4 голосов
/ 03 августа 2020

Я пытаюсь использовать Dynami c Links cordova plugin в моем приложении ioni c 1, я выполнил шаги, описанные здесь, для настройки ioni c документации на плагин однако я не могу заставить генерацию ссылки работать должным образом, я использую следующий код для создания и назначения ссылки на переменную

  scope.button = function () {

      cordova.plugins.firebase.dynamiclinks.createDynamicLink({
        link: "https://google.com"
      }).then(function (url) {
        console.log("Dynamic link was created:", url);
        var someVar = url;
      });
    };

После этого я пытаюсь отобразить переменную на нажмите, здесь я ожидаю, что ссылка появится в <span>, как только я нажму на элемент

<a menu-close class="item sideMenuItem" href="#" ng-click="button()">
                    <i class="icon ion-thumbsup"></i>
                    <span>{{ someVar }}</span>
</a>

, однако он просто не отображается

введите описание изображения здесь

На скриншоте я нажимаю кнопку, обозначенную как «нажмите здесь, чтобы сгенерировать», чтобы вызвать функцию генерации динамической связи c, и ожидаю увидеть результат (саму ссылку) в span ниже, обозначенном как «динамика * 1027. * ссылки здесь ».

{
    "name": "chaishen2",
    "version": "1.1.1",
    "description": "Chaishen2: An Ionic project",
    "dependencies": {
        "@angular/animations": "^5.2.8",
        "bower": "^1.8.8",
        "cordova-admob-sdk": "^0.24.1",
        "cordova-android": "8.1.0",
        "cordova-browser": "^6.0.0",
        "cordova-plugin-admob-free": "^0.27.0",
        "cordova-plugin-androidx": "^2.0.0",
        "cordova-plugin-androidx-adapter": "^1.1.1",
        "cordova-plugin-console": "^1.1.0",
        "cordova-plugin-device": "^1.1.7",
        "cordova-plugin-enable-multidex": "^0.2.0",
        "cordova-plugin-facebook": "^0.2.2",
        "cordova-plugin-firebase-analytics": "^4.3.0",
        "cordova-plugin-firebase-dynamiclinks": "^4.4.0",
        "cordova-plugin-firebasex": "^9.1.2-cli",
        "cordova-plugin-inappbrowser": "^1.7.2",
        "cordova-plugin-splashscreen": "^4.1.0",
        "cordova-plugin-whitelist": "^1.3.4",
        "cordova-plugin-x-toast": "^2.7.2",
        "cordova-promise-polyfill": "0.0.2",
        "cordova-support-android-plugin": "^1.0.2",
        "cordova-support-google-services": "1.4.0",
        "gulp": "^3.5.6",
        "gulp-concat": "^2.2.0",
        "gulp-minify-css": "^0.3.0",
        "gulp-rename": "^1.2.0",
        "gulp-sass": "^2.0.4",
        "ionic-plugin-keyboard": "^2.2.1",
        "ng-cordova-oauth": "^0.3.0",
        "shelljs": "^0.8.3"
    },
    "platforms": [
        "android"
    ],
    "cordova": {
        "platforms": [
            "browser",
            "android"
        ],
        "plugins": {
            "cordova-plugin-console": {},
            "cordova-plugin-device": {},
            "cordova-plugin-facebook": {
                "FACEBOOK_DISPLAY_NAME": "VIndex Stock Screener",
                "FACEBOOK_APP_ID": "252597731903503"
            },
            "cordova-plugin-inappbrowser": {},
            "cordova-plugin-splashscreen": {},
            "cordova-plugin-whitelist": {},
            "ionic-plugin-keyboard": {},
            "cordova-plugin-x-toast": {},
            "cordova-plugin-admob-free": {
                "ADMOB_APP_ID": "ca-app-pub-6419100469604124~7181940500"
            },
            "cordova-support-google-services": {},
            "cordova-plugin-firebasex": {
                "FIREBASE_ANALYTICS_COLLECTION_ENABLED": "true",
                "FIREBASE_PERFORMANCE_COLLECTION_ENABLED": "true",
                "FIREBASE_CRASHLYTICS_COLLECTION_ENABLED": "true"
            },
            "cordova-plugin-enable-multidex": {},
            "cordova-plugin-firebase-dynamiclinks": {
                "PAGE_LINK_DOMAIN": "vindexscreener.page.link",
                "FIREBASE_DYNAMIC_LINKS_VERSION": "19.1.+"
            }
        }
    },
    "devDependencies": {
        "@ionic/v1-toolkit": "2.0.17",
        "ionic": "3.9.1"
    }
}

мой package.json

1 Ответ

0 голосов
/ 11 августа 2020

Если TypeScript попробуйте:

export class Test {
someVar:any;
constructor(){}
scope.button = function () {

      cordova.plugins.firebase.dynamiclinks.createDynamicLink({
        link: "https://google.com"
      }).then(function (url) {
        console.log("Dynamic link was created:", url);
        this.someVar = url;
      });
    };
}
<a menu-close class="item sideMenuItem" href="#" ng-click="button()">
                    <i class="icon ion-thumbsup"></i>
                    <span>{{ someVar }}</span>
</a>

Если Javascript попробуйте:

.controller('SomePageCtrl', function($scope) {
  $scope.someVar="";
  $scope.button = function () {
      cordova.plugins.firebase.dynamiclinks.createDynamicLink({
        link: "https://google.com"
      }).then(function (url) {
        console.log("Dynamic link was created:", url);
        $scope.someVar = url;
      });
    };
})
...