2016-04-05 29 views
1

Angular with WinJS denetimlerini birlikte kullanmak için güzel bir proje var: https://github.com/winjs/angular-winjs. Bu uygulamayı zaten güzelce kullanıyorum. Ancak, WinJS'nin diğer bölümleri için açısal kullanımını gerçekten kapsamıyor.WinJS olaylarını açısal şekilde nasıl yaparım?

Ben pencerelerde 10 telefon üzerinde devloping ediyorum ve bu gibi bir kod var: Ben bu yüzden $ sağlayıcılarını kullanmak ve değiştirebileceğiniz şeyler açısal yol yapmak benim app.onactivated ataması değiştirebilir nasıl

var app = WinJS.Application; 
var activation = Windows.ApplicationModel.Activation; 
app.onactivated = function (args) { 

$ kapsam değişkenleri vb.

cevap

1

$ sağlayıcıları tarafından açısal teklifler ($ http, $ konum vb.) Gibi hizmetleri mi kastediyorsunuz? Eğer öyleyse, denetleyici geri çağırma Tanım işlevi (aşağıya bakın kodları) içine açısal yöntemi kullanabilirsiniz, böylece açısal hizmetleri kullanabilirsiniz.

JS:

(function() { 
"use strict"; 

var app = WinJS.Application; 
var activation = Windows.ApplicationModel.Activation; 
var myApp = angular.module("myApp", ["winjs"]); 
var myController = myApp.controller("myController", function ($scope) { 
    app.onactivated = function (args) { 
     if (args.detail.kind === activation.ActivationKind.launch) { 
      if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) { 
       $scope.$apply(function() { 
        $scope.test = "The Scope.test has been changed!"; 
       }); 
      } 
     args.setPromise(WinJS.UI.processAll()); 
     } 
    }; 
}); 
app.start(); 
})(angular); 

HTML:

<body class="win-type-body" ng-app="myApp"> 
<div ng-controller="myController"> 
<input type="text" ng-model="test"/> 
    {{test}} 
</div> 

değil Eğer öyleyse, $ sağlayıcılar ne söyleyebilir?