2016-04-13 25 views
5

Web formları tabanlı eski bir uygulamadan Aurelia'yı önyükleme gerçekleştiriyorum. Kimlik doğrulama ile ilgili bilgilerim, Özel Taban Sayfa sınıfındaki web formları uygulamasında korunur.ASP.NET WebForms'tan Aurelia Global Scope'a veri aktarımı

&'u bu kimlik doğrulama bilgilerini Aurelia'nın global kapsamına nasıl geçirebilirim? Böylece, kullanıcı/rol temelinde belirli menü öğelerini göstermek/gizlemek için menüler oluştururken menüyü kullanabilir miyim?

cevap

5

Sen javascript uygulamaları için kullanılabilir tüm bilgileri yapar dokümanın başına bir <script> etiket eklemek için üzerinde lojik özel tabanı sayfasını bırakabilir:

<head> 
    ... 
    <script> 
    window.appInfo = { 
     user: 'foo', 
     bar: 'baz' 
    }; 
    </script> 
</head> 
<body aurelia-app="main"> 
    ... 

Sonra aurelia uygulamasında bu bilgi erişebilir gerektiğinde:

export class App { 
    constructor() { 
    let info = window.appInfo; 
    // do something with the app info... 
    } 
    ... 
} 

hatta bir bağımlılık olarak ilan vermenizi sağlar kapta nesneyi kayıt olabilir. Bu, kodunuzu daha taşınabilir ve test edilebilir hale getirecektir. main.js ise

: aurelia.container.registerInstance('app-info', window.appInfo);

@inject('app-info') 
export class App { 
    constructor(info) { 
    // do something with the app info...   
    } 
    ... 
} 
+1

sayesinde, sorunsuz çalıştı. –

+1

Bu bana çok yardımcı oldu. Ve Ajay'in dediği gibi, sorunsuz ve kolay. –

+0

Teşekkür ederim Çok @Jeremy. Bir çekicilik gibi çalışır :) – Axel

İlgili konular