2012-07-25 21 views
8

Bu soruya yakındır: jQuery Mobile layout in ASP.NET MVC app Ancak, her görünümde Üstbilgi ve Altbilgiyi yeniden yazmanın daha verimli olduğunu düşündüğüm en iyi uygulamaları bulmaya çalışıyorum. Daha iyi bir yol olmalı.Jquery.Mobile sayfalarına ASP.NET MVC Düzeni uygulamak için en iyi yöntemler

Bu yüzden, ASP.NET MVC paylaşılan Mizanpaj görünümlerini (ana sayfalar) Görünümlerim/Kısmi görünümlerim ile çalışacak şekilde yapmanın en iyi yolunu arıyorum. etrafında okuyunca

MVC Düzenleri JQuery mobil sayfalar işlemek için iki yol vardır:

1) Standart Düzen biçimi:

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Page Title</title> 
     ... 
</head> 
<body> 
<div data-role="page"> 
    <div data-role="header">...</div> 
    <div data-role="content">@RenderBody()</div> 
    <div data-role="footer">...</div> 
</div> 
</body> 
</html> 

Ben sorunlarla koşmaya başladı ve daha sonra öğrendim ben öğreniyorum gibi Bu ana ödeme içindeki diğer "Sayfaları" gerçekten yükleyemezsiniz. Tüm devralınan Görünümlerin söz konusu JQuery mobil sayfasının bir parçası olması gerekir. Hatalı. 2)

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Page Title</title> 
     ... 
</head> 
<body> 
<div data-role="page">  
    @RenderBody() 
</div> 
</body> 
</html> 

Bu çalışacaktır ama aynı zamanda ben her View yeniden tipi üstbilgi ve altbilgi olması anlamına gelir.

Görüşlerinizi paylaşır mısınız? Düzenimdeki birden fazla JQuery Mobile "sayfası" nı yükleyebilmem için henüz en iyi yaklaşım nedir, ancak her yerde Üstbilgi/Altbilgiyi tekrarlamak zorunda kalmam. ... Yani bir noktada değiştirmek zorundaysa ne olur?

Önceden teşekkür ederiz.

<!DOCTYPE html> 
<html> 
    <head>...</head> 
    <body> 
     @RenderBody() 
    </body> 
</html> 

Sonra da içerebilir usta düzeni, devralan düzen sayfalarını olun: Ben benzer durumlarda yaptık

cevap

2

bir şey yok "sayfa" div ile bir ana düzen yapmaktır sayfalarınızın her biri farklı bir başlık/altbilgi varsa üst bilgi/alt tabii

@{ 
    Layout = "~/Views/Shared/_LayoutMobileMaster.cshtml"; 
} 
<div data-role="page" data-theme="b" position="fixed"> 
    <div data-role="header" data-position="fixed" data-theme="b" id="contentHeader"> 
     <a id="backBtn" data-direction="reverse" data-icon="back" class="ui-btn-left">Back</a> 
     <h1>@ViewBag.Title</h1> 
     <a id="logoutBtn" data-icon="gear" class="ui-btn-right">Logout</a> 
    </div> 
    <div data-role="content" data-theme="b"> 
     @RenderBody() 
    </div> 
</div> 

, o zaman bu çok pratik değildir; Ara düzenler ile sadece ortadan kaldırabilir ve üstbilgi/altbilgiyi doğrudan görünümlerinizin her birine yerleştirebilirsiniz. Ancak, her kümenin belirli bir görünüme sahip olması gereken farklı sayfa kümeleri varsa, bunun çok yararlı olabileceğini düşünüyorum.

+0

Bu Master düzenine sahip olduğumu anlamıyorum. Herhangi bir JQuery Mobile içeriğine sahip değil (sayfa gösterimi gibi). Gönderdiğiniz ikinci düzen, sayfanız (lar) için kullanacağınız düzendir. Bu, standart bir Düzen İçeriği sayfa senaryosuna sahip olmaktan nasıl farklı olabilir? Bana öyle geliyor ki, görünümler/başlıklar içeren birden fazla "Düzen sayfası" oluşturabilir ve Görüntülemelerim'den devralmak için kullanabilirim. "Master Düzen" e sahip olmak için bir sebep yok mu ... Yoksa bir şey mi özlüyorum? – Shenaniganz

+1

Temel olarak, tüm sitenin ihtiyaç duyacağı tüm komut dosyalarını/stil sayfalarını ekleyebildiğim için, kolaylık sağlamak içindir, bu yüzden bunları her sayfaya eklemek zorunda değilim. Sayfanın içinde ya da her bir alt düzende yer alması gerçekten bir fark yaratmamalı. – Alejo

+0

Daha iyi bir yaklaşım olabileceğinden emin değiliz ama bu benim son bulduğum yol. Teşekkürler – Shenaniganz

İlgili konular