为什么$ location.absUrl(),$ location。$$ url,$ location。$$路径空白在href?

时间:2017-03-18 06:44:11

标签: javascript html angularjs facebook-sharer location-services

以下是关注的代码:

<div ng-app="">
https://www.facebook.com/sharer/sharer.php?u={{$location.absUrl()}}
https://www.facebook.com/sharer/sharer.php?u={{$location.$$url}}
https://www.facebook.com/sharer/sharer.php?u={{$location.$$path}}
</div>

我们需要u参数的值为当前页面。 我们哪里错了?

2 个答案:

答案 0 :(得分:2)

你不能在HTML中这样做,或者你可以得到这样的当前位置,

将当前位置分配给范围变量

  $scope.a = window.location.href;

然后在HTML中,

   <br>Link = <a ng-href="https://www.facebook.com/sharer/sharer.php?u={{a }}" target="_blank">facebook</a>

<强>样本

&#13;
&#13;
<!DOCTYPE html>
<html>

<head>
  <script data-require="angular.js@*" data-semver="1.3.0-beta.5" src="https://code.angularjs.org/1.3.0-beta.5/angular.js"></script>
  <link rel="stylesheet" href="style.css" />
  <script src="script.js"></script>
  <script type="text/javascript">
    var myApp = angular.module('myApp', []);

    myApp.controller('TestCtrl', ['$scope', function($scope) {
      $scope.a = window.location.href;
    }]);
  </script>
</head>

<body ng-app="myApp">

  <div ng-controller="TestCtrl">
     <input type="text" ng-model="a">
    <br>a={{a}}
    <br>
    <br>Link = <a ng-href="https://www.facebook.com/sharer/sharer.php?u={{a}}" target="_blank">facebook</a>
  </div>
</body>

</html>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

$scope变量存在的属性只能在HTML上用作绑定。因此,您必须在$location

上公开$scope服务
//inject $location to controller before use it.
$scope.$location = $location;