2015-02-08 92 views
0

我正在使用framework7和AngularJS製作移動應用程序。我只需要AngularJS進行數據綁定。Framework7 + AngularJS(DOM更改角度無法找到控制器)

當點擊與framework7的鏈接時,div的內容會發生變化。在新的內容中,我設置了一個新的控制器,但角度無法找到它。有沒有辦法通知角度的DOM已經改變?

您可以在這裏下載項目:http://www35.zippyshare.com/v/yDszXHuB/file.html

這DemoController index.html中的作品。它改變了{{title}}的

enter image description here

這DemoControllerAbout在about.html不起作用。它不會改變的{{title}}

enter image description here

enter image description here

+0

做您壓縮運行的js代碼?如果是的話,您的控制器名稱也可能會縮小... – 2015-02-08 18:22:45

+0

不,我沒有縮小我的代碼。我認爲無法找到控制器,因爲當angularjs加載時它不在DOM中。 – 2015-02-08 18:35:09

+0

檢查腳本src = angularjs後是否要放置腳本src = app.js。它應該很重要,但嘗試。 – 2015-02-08 18:43:17

回答

0

你應該試行編制pageinit事件的看法。試試這個

Framework7.prototype.plugins.angular = function(app, params) { 
    function compile(newPage) { 
     try { 
      var $page = $(newPage); 
      var injector = angular.element("[ng-app]").injector(); 
      var $compile = injector.get("$compile"); 
      var $timeout = injector.get("$timeout"); 
      var $scope = injector.get("$rootScope"); 
      $scope = $scope.$$childHead; 
      $timeout(function() { 
       $compile($page)($scope); 
      }) 
     } catch (e) { 
      //console.error("Some Error Occured While Compiling The Template", e); 
     } 
    } 

    return { 
     hooks: { 
      pageInit: function(pageData) { 
       compile(pageData.container); 
      } 
     } 
    } 

}; 

,並設置該插件,而framework7應用

new Framework7({ 
    .... 
    angular : true 
    .... 
}) 

的初始化欲瞭解更多詳情,您可以參閱下面的github回購與完全工作演示 https://github.com/ashvin777/framework7.angular