【问题标题】:How to make a contact's phone number clickable to call and to send a message in ionic?如何使联系人的电话号码可点击以拨打电话并在离子中发送消息?
【发布时间】:2015-10-24 20:38:00
【问题描述】:

我从GitHub克隆了离子项目

虽然无法点击联系人的电话号码来拨打电话和发送消息。所以对于 index.html 文件的第 39 行,我从

<p ng-if="contact.emails.length > 0">{{contact.emails[0].type}} : {{contact.emails[0].value}}</p>

<p ng-if="contact.phones.length > 0">{{contact.phones[0].type}} : <a ng-href='{{contact.phones[0].value}}'>{{contact.phones[0].value}}</a></p>

但事实证明,该应用将不再加载任何联系人信息。

我在发送数据时是否遗漏了什么或者我完全错了?

【问题讨论】:

  • 我们需要查看您传递给 ng-href 的变量的值。锚标记需要传递的只是 href="tel:numberwithnospacesordashes"。
  • 事实上,您是否也可以抛出填充这些值的控制器代码?这将有助于诊断。
  • 你安装插件了吗? cordova 插件添加 org.apache.cordova.contacts ?

标签: javascript html angularjs cordova ionic


【解决方案1】:

要使用 ionic 拨打电话,您需要在 confi.xml 中添加此代码

<access launch-external="yes" origin="tel:*" />

在您看来,您需要添加:

<a ng-href=tel:{{user.phoneNumber}} class="button button-positive">Call me</a>

【讨论】:

    【解决方案2】:

    更新:

    我刚刚注意到它(可能)是加载数据而不是链接本身的问题。如果不是下面的问题,需要查看您的控制器代码以了解更多关于为什么它没有填充 ng-href...

    以前:

    使用以下 href 应该足以触发调用:

    tel:' + number

    Angular(位于 ionic 上)不喜欢任何不寻常的东西进入锚点 href,除非你告诉它你想要它。见这里:

    http://forum.ionicframework.com/t/ng-href-tel-redirecting-to-call-with-empty-number/4567/2

    如果您“只是”希望它工作,最快的解决方法是您认为:

    <p ng-if="contact.phones.length > 0">{{contact.phones[0].type}} : <a href="#" ng-click="triggerCall('{{contact.phones[0].value}}')">{{contact.phones[0].value}}</a></p>
    

    然后在你的控制器中:

    $scope.triggerCall = function(number){
        document.location.href = 'tel:' + number
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-15
      • 2013-01-24
      • 2020-04-08
      • 2014-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多