2016-09-15 16 views
0

次のAngular 1.5.7アプリを使用して、コントローラのスコープに注入されたユーザデータを正しく表示するには、少し苦労しました。これは、Windowsデスクトップ環境内のすべてのブラウザでうまく動作しますが、iOS 9.3.5ではデータを表示できません(テンプレートバインディングを表示するだけです)。角度1.5.7コントローラスコープがiOS 9.3+で失敗する

ルータ:

routingApp 
.config(function ($routeProvider) { 
    $routeProvider 
     .when('/user', { 
      controller: 'userController', 
      templateUrl: 'app/partials/userPartial.html' 
     }) 
     .when('/contacts', { 
      controller: 'contactController', 
      templateUrl: 'app/partials/contactPartial.html' 
     }) 
     .otherwise('/'); 
}); 

コントローラー:

routingApp 
.controller('userController', function ($scope, User) { 
    //Specify accessible controller attributes 
    $scope.User = new User(); 
}); 

部分:

<div class="user" id="userWrapper"> 
     <h1 class="header">Contact Information</h1> 
     <span class="userField">Name: {{User.name}}</span> 
     <span class="userField">Phone: {{User.phone}}</span> 
     <span class="userField">Email: {{User.email}}</span> 

     <h1 class="header">Address Information</h1> 
     <span class="userField">Street: {{User.address.street}}</span> 
     <span class="userField">Suite: {{User.address.suite}}</span> 
     <span class="userField">City: {{User.address.city}}</span> 
     <span class="userField">Zipcode: {{User.address.zipcode}}</span> 
</div> 

ここでは例を参照してください:http://changelib.com/routing/ 完全なコードはここにある:https://github.com/Thoughtscript/demo-angular_routing

コメント:ng-AppはiOS用にいくつかの追加設定が必要だと聞きました。それが本当であるかどうかは分かりませんが、私はアプリケーションを直接ブートストラップする(これを正しく実行したかどうかはわかりません)、別のルータライブラリに切り替える(angle-route.min.jsを使用しています)など、状況を改善しなかった変化。どんな助けでも大歓迎です!ありがとう!

答えて

0

サポートされていないES6コードやルーター依存関係のコミットされていない変更によって、この問題が修正されました。明らかにするには、上のコードは問題ありませんでした(問題は工場とサービスにあります)。 iOSでES6サポートを再確認してください。

関連する問題