2015-11-30 4 views
12

Ich bin neu in Sails.js, und ich bin ziemlich aufgeregt davon. Es ist ein großartiges Werkzeug zum Erstellen von APIs. Ich arbeite auch eine Weile mit Yeoman generierten Single-Page-Apps (jQuery oder eckig) und sie sind ideal für die Client-Seite Logik.Wie kann Sails.js eine Yeoman generierte App

Die derzeit einzige Möglichkeit, eine App auf der Grundlage der beiden Technologien zu erstellen, besteht jedoch darin, sie in zwei völlig getrennte Projekte aufzuteilen, was eine Verschwendung darstellt.

Ich bin auf der Suche nach einer Möglichkeit, die beiden zu kombinieren. Ich möchte, dass Sails.js die statischen Assets der Web-App bedient und seine index.html-Datei lädt (anstelle von homepage.ejs). Ich möchte auch die Entwicklungsumgebung (grunt, live-reload funktioniert wie es sollte).

Ich habe versucht, ein Yeoman-Projekt innerhalb der Assets-Ordner und Umleitung des Layouts auf die index.html, aber es hat mehrere Probleme: - Ich kann nicht zwischen der App/Ordner (während der Entwicklung) und der dist/Ordner trennen (in Produktion) - der Link bower_components ist unterbrochen (bezieht sich auf/bower_components anstelle von/assets/app/bower_components)

Ich denke, es könnte weitere Probleme geben, die ich noch nicht entdeckt habe.

Hat jemand versucht (und erfolgreich) die Kombination dieser Technologien?

Antwort

7

Sie können die statische index.html statt homepage.ejs dienen, indem Sie die folgenden Schritte ausführen:

Ordner
  1. , Ihre Datei index.html unter dem Vermögen.
  2. offen routes.js in Config-Ordner und ändern Sie den Code aus
 
    '/': { 
     view: 'homepage' 
    } 

zu

 
    '/': { 
     view: false 
    } 

Das Vermögen Ordner als Stammordner auf der Website dient. Wenn Ihre „angular.min.js“ Datei befindet sich in „assets \ bower_components \ Winkel“ -Ordner, werden diese umgewandelt werden, um „/bower_components/angular/angular.min.js“ im Browser.

5

Vielleicht nicht genau das, wonach Sie suchen, aber es gibt ein Projekt, das ich vor einiger Zeit angeschaut habe, das etwas Ähnliches zu tun scheint; Kombinieren von Front-End (jquery/Winkel-) + Back-End (Segel).

http://sanestack.com/

Der wesentliche Unterschied besteht darin, dass der sanestack Ember als Frontend verwendet (was nicht für Sie sein kann). Aber das Schöne daran ist, dass die Generatoren die entsprechenden Ressourcen auf den Frontend + Backend-Projekten gleichzeitig erstellen.

Zumindest wird es hoffentlich gibt Ihnen einige Ideen, wie Segeln zu kombinieren mit einem Front-End-Projekt.