2013-07-29 13 views
13

Chciałem wiedzieć, jak wyświetlić szablon startowy za pomocą nowszej wersji żagli. Czy powinienem zaktualizować linki JS do czegoś innego. Próbowałem przenieść js i obrazy w folderze zasobów, ale javascript nie działał. Dokumentacja żagli jest bardzo słaba na ten temat. Czy każdy może łatwo to zintegrować? Z góry z góryJak wyświetlać szablon bootstrapu w żaglach 0,9?

Odpowiedz

10

Żagle 0.9.x zostały przeniesione do używania Grunta do obsługi aktywów. Pozwala to na wykonywanie wielu różnych rodzajów wstępnej kompilacji i obsługi zasobów. Domyślnie automatyczne wstrzykiwanie zasobów do widoków i układów jest niedostępne.

Dodaliśmy flagę, którą można dołączyć podczas generowania nowego projektu żagli, który utworzy folder w folderze zasobów i automatycznie wstrzyknie wszystkie pliki do pliku index.html lub układu. To powinno być używane tylko do programowania.

sails new <project name> --linker

Teraz trzeba będzie folder zatytułowany linker w folderze swoje aktywa, które można umieścić pliki, aby je automatycznie połączone. Dodany zostanie również znacznik do pliku index.html i pliku układu, aby wiedzieć, gdzie należy wprowadzić różne JS, CSS i szablony.

można przeczytać więcej tutaj: Sails Wiki - Assets

Jeśli pracujesz z projektem, który został już utworzony można ręcznie utworzyć następującą strukturę plików:

assets/ 
    linker/ 
    js/ 
    styles/ 
    templates/ 

będzie też trzeba dodać dodając znaczniki do widoku:

<!--SCRIPTS--> 
All .js files in assets/linker/js will be included here 
In production mode, they will all be concatenated and minified 
<!--SCRIPTS END--> 

<!--STYLES--> 
All .css files in assets/linker/styles (including automatically compile ones from LESS) will be included here 
In production mode, they will all be concatenated and minified 
<!--STYLES END--> 

<!--TEMPLATES--> 
All *.html files will be compiled as JST templates and included here. 
<!--TEMPLATES END--> 

Aby użyć programu ładującego i mieć pliki automatycznie dodawane do strony, należy umieścić bootstra p.js do assets/linker/js i pliku bootstrap.css do assets/linker/css.

Podczas produkcji będziesz chciał edytować plik gruntów, aby skompilować wszystkie pliki css i js do pojedynczych plików i ręcznie połączyć je w widoku/layout/index.html.

+0

jeśli istnieje wiele plików html tak bardzo obecny w folderze Szablony, będą one wszystkie być nawał razem w Wszystkie pliki * .html zostaną skompilowane jako szablony i JST zawarte tutaj. ??? Czy możesz pokazać przykład selektywnego renderowania określonego html dla adresu URL? Przepraszam, ale jestem naprawdę nowy z chrząknięciem.Z góry dzięki – Bhanu423

+0

Szablony są więc przeznaczone dla pojedynczych stron internetowych. Zostaną one wstępnie skompilowane do szablonów JST, które możesz wykorzystać w swoim kodzie front-end. Jeśli chcesz renderować widoki po stronie serwera i mieć je dla określonej trasy, będziesz chciał użyć folderu widoków. Tutaj możesz użyć EJS, Jade lub dowolnej innej logiki widoku, którą chcesz. Zobacz: [Sails View Docs] (http://sailsjs.org/#!documentation/views), aby uzyskać więcej informacji na temat widoków. – particlebanana

+0

Dlaczego używać linkera tylko do programowania? – Vadorequest

7

Występuje problem z glifphicon. Miejsce docelowe pliku css minified to /.temp/public/min/production.css, a czcionki muszą znajdować się w /.temp/public/fonts/. Następnie musisz skopiować folder czcionek z asset/linker/fonts/do/.temp/public/fonts/.

Trzeba dodać to w Gruntfile wewnątrz copy.dev.files tablicy:

{ 
    expand: true, 
    cwd: './assets/linker/fonts', 
    src: ['**/*'], 
    dest: '.tmp/public/fonts' 
} 

Albo w bardziej ogólny sposób:

{ 
    expand: true, 
    cwd: './assets', 
    src: ['**/fonts/*'], 
    dest: '.tmp/public/fonts', 
    flatten: true 
} 

będzie szukać wszystkich folderów o nazwie fonts pod assets. Użyj flatten, aby ominąć podfoldery.

Cheers,

Powiązane problemy