次の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を使用しています)など、状況を改善しなかった変化。どんな助けでも大歓迎です!ありがとう!