특급 JS내의 여만
저는 아직도 Yeoman과 Express의 예를 들어보고 싶습니다.
저는 다음을 시도해 보았는데 "좋아요"라는 반응을 보았지만, 저는 경로를 병합하는 데 어려움을 겪고 있습니다.(가독성을 위해 지나치게 단순화됨)
mkdir test
cd test
express
mkdir app
cd app
mkdir js
cd js
yeoman angular
그런 다음 Gruntfile.js에서 "output:dist"를 "output:../..public"으로 변경했습니다.
이제 두 서버 모두 자체적으로 잘 실행됩니다(예: yeoman server 및 node app.js).지금 'yoman build'를 실행하여 express 앱에서 /public에 minimated JS를 출력할 수도 있습니다.
경로가 어떻게 합쳐질지 좀 애매한데요?급행 노선이 아닌 Angular 노선을 올리려고 합니다.github의 angular-express-seed 예제들은 괜찮아 보이지만, 저는 여전히 Yeoman이 프로젝트에 통합되기를 원합니다.
어떤 제안이든 감사히 받겠습니다.
요먼 + expressjs의 경우 이 구조를 추천합니다.
mkdir app
cd app
yeoman angular
express .
그래서 당신의 dir 트리는 이렇게 보여야 합니다.
.
├── app
│ ├── 404.html
│ ├── favicon.ico
│ ├── index.html
│ ├── robots.txt
│ ├── scripts
│ │ ├── controllers
│ │ │ └── main.js
│ │ ├── vendor
│ │ │ ├── angular.js
│ │ │ ├── angular.min.js
│ │ │ ├── es5-shim.min.js
│ │ │ └── json3.min.js
│ │ └── yeoman-test.js
│ ├── styles
│ │ └── main.css
│ └── views
│ └── main.html
├── app.js
├── Gruntfile.js
├── package.json
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── user.js
├── test
│ ├── lib
│ │ └── angular-mocks.js
│ └── spec
│ └── controllers
│ └── main.js
├── testacular.conf.js
└── views
├── index.jade
└── layout.jade
이제 중복된 것을 제거할 수 있습니다.public
디렉토리(Directory).app
대신):
rm -rf public
그리고 지금은app.js
, 정적 파일을 서비스할 dir를 변경해야 합니다.다음 줄 변경:
app.use(express.static(path.join(__dirname, 'public')));
다음 항목에 대해:
app.use(express.static(path.join(__dirname, 'app')));
그리고 그 정도는 되어야 합니다.이제 두 개의 "인덱스" 파일이 있다는 점에서 한 가지 주의할 점이 있습니다. 하나는 다음과 같습니다.views/index.jade
, 다른 하나는app/index.html
. 제거하기app/index.html
현재는 여만을 깨뜨리고 있으므로, 나의 조언은 길을 없애라는 것입니다.app/index.jade
편집만 하면 됩니다.index.html
.
도움이 되길 바랍니다!
여기 약간 다른 설정이 있습니다.
yo angular
Gruntfile.js를 업데이트하여 구성을 'app'에서 'public'으로 변경합니다.
그다음에 하오
express .
app.js를 열고 이 app.get ('/', routes와 같은 경로 매핑이 없는지 확인합니다.색인);노드 서버가 실제로 "그룬트 서버"를 실행할 때 로드되는 파일과 동일한 index.html을 제공하기 때문입니다.
이제 공용 디렉토리를 삭제한 다음 앱 디렉토리를 공용으로 이동합니다.
rm -rf public
mv app public
이 프로젝트는 모든 요구 사항을 포함하는 것 같습니다(MongoDB에 대한 옵션 지원도 포함되어 있음). https://github.com/DaftMonk/generator-angular-fullstack
방금 현지에서 시도해봤는데 효과가 있네요.
npm install -g generator-angular-fullstack
yo angular-fullstack [appname]
자세한 내용은 GitHub 페이지를 참고하세요.
만약 내가 평판이 있다면 @btford의 답변에 대해 논평할 것입니다.
설치를 추가하고 싶었을 뿐입니다.express .
끝나고yo angular
grunt-created 패키지를 덮어씁니다.@jperezaguinaga 가 보고한대로 grunt를 깰 json 파일.
패키지 사본을 꼭 저장해 두십시오.설치하기 전 jsonexpress .
. 그런 다음 원래 패키지에 다음 종속성을 추가합니다.json:
"dependencies" : {
"express": "3.3.4",
"jade": "*"
}
이 솔루션에 문제가 있습니다. express는 여전히 index.html 대신 index.jade를 로드하려고 하지만 localhost:3000/index.html express render를 올바르게 입력하면 됩니다.app.js에서 이 줄을 제거하는 것을 해결했습니다.
//app.get('/', routes.index);
도움이 되길 바랍니다.공유해줘서 고마워, D.
다음은 다른 사람들이 이전에 제안한 단계이지만 모두 번호가 매겨진 단계의 모음입니다.버전을 기준으로 합니다.여만 1.0.4 & 익스프레스 3.3.8
1) 프로젝트 디렉토리와 cd를 작성합니다.
2) 설치 각도:
yo angular
(su에 로그인하지 않은 경우 다음 두 줄을 실행해야 함)
bower install
sudo npm install
3) 패키지 이름을 바꿉니다.json to package_yo.json (따라서 express' 버전의 package.json에서 덮어쓰지 않습니다)
4) Express Express -cless -Hs 설치(또는 원하는 기타 Express 옵션 설치)
sudo npm install
5) Express' public 디렉토리를 삭제하고 Express' app.js: app.use(require('less-middleware')({ src: _dirname + '/app'}), app.use(express.static(path.join(_dirname, 'app'))의 경로에 대해 'public'을 'app'으로 변경합니다.
6) express' 기본 경로( app.get('/', 경로)를 삭제합니다.index); ) (이제 express는 angular의 /app 폴더에 지정된 경로를 대신 사용합니다.
7) 서버 시작 npm 시작
(그럼 요만의 웰컴페이지는 localhost:3000/에서 보실 수 있습니다.)
언급URL : https://stackoverflow.com/questions/14106248/yeoman-inside-expressjs
'programing' 카테고리의 다른 글
MySQL 데이터베이스에 255 char 이상 저장하는 방법? (0) | 2023.11.02 |
---|---|
C#에서 XML 파일을 읽고 구문 분석하려면 어떻게 해야 합니까? (0) | 2023.11.02 |
가입 대 WHERE의 Oracle SQL 쿼리 필터 (0) | 2023.11.02 |
ODBC ExecuteNonQuery()가 중단됨 (0) | 2023.11.02 |
MySQL Workbench 호환되지 않는/비표준 서버 (0) | 2023.11.02 |