不适用于angularfire教程的示例

时间:2014-02-21 15:26:56

标签: angularjs firebase angularfire

当我尝试按https://www.firebase.com/docs/angular/

中所述运行页面时
    <html ng-app="sampleApp">
  <head>
    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.7/angular.min.js"></script>
    <script src="//cdn.firebase.com/js/client/1.0.6/firebase.js"></script>
    <script src="//cdn.firebase.com/libs/angularfire/0.6.0/angularfire.min.js"></script>
    <script src="app.js"></script>
  </head>
  <body ng-controller="SampleController">
    <input type="text" ng-model="text"/>
    <h1>You said: {{text}}</h1>
  </body>
</html>

和app.js:

 angular.module("sampleApp", ["firebase"])
  .factory("sampleService", ["$firebase", function($firebase) {
    var ref = new Firebase("https://sizzling-fire-8112.firebaseio.com/");
    return $firebase(ref);
  }])
  .controller("SampleController", ["$scope", "sampleService",
    function($scope, service) {
      service.$bind($scope, "text");
    }
  ]);

有:你在网页屏幕上说:{{text}}。 我做了什么wron? 谢谢;)

1 个答案:

答案 0 :(得分:2)

我想你不是通过网络服务器打开这个页面,而是直接从文件系统打开。 如果是这样,永远不会这样做。 AJAX,canvas等可能存在各种限制。

在您的示例中,您尝试使用protocol relative URLs加载外部脚本 如果从文件系统打开页面,则URL将转换为file://...格式。

要解决此问题,您应该使用网络服务器。如果由于某些原因无法使用它,请将http:添加到外部网址的开头,因此它将是:

http://ajax.googleapis.com/ajax/libs/angularjs/1.2.7/angular.min.js

而不是

//ajax.googleapis.com/ajax/libs/angularjs/1.2.7/angular.min.js