목차

반응형

몽고db와 몽구스는 엄연히 다르다

몽고db가 더욱 큰 개념인데

몽구스는 몽고db 드라이버라고 불린다.

몽고db 드라이버는 마치 몽고db의 플러그인같은 개념인데

몽구스라는 드라이버를 사용하게 되면서 얻는 이점은

db의 스키마를 설정할수있다.

다시 말하자면 몽구스를 사용하지 않는 몽고db는 스키마없이 데이터만 꾸역꾸역 집어넣기만 한다.


하지만 몽구스같은 드라이버를 사용하게되면 코드가 더욱 복잡해지며 데이터 처리가 복잡해지기 때문에 연산에서 에러가 날 가능성이 높아진다고 한다.


참고

http://stackoverflow.com/questions/28712248/difference-between-mongodb-and-mongoose

반응형
반응형

var mongoose = require('mongoose');

mongoose.connect('mongodb://localhost:27017/test');


cloud9에서는 위와같이하면 작동함.

반응형
반응형

meanstack의 구성원들의 버전을 확인해보면 된다.

M mongod --version

E express -V (대소문자 구분)

A 만든 페이지에서 f12누르고 콘솔가서 아무말도 없으면 angular.js가 로드되는데 문제가 없다는 뜻

N node -v 과 npm -v


참고

http://adrianmejia.com/blog/2014/10/01/creating-a-restful-api-tutorial-with-nodejs-and-mongodb/

반응형
반응형

http://stackoverflow.com/questions/16284442/cannot-get-textarea-value-in-angularjs

textarea는 html의 textarea를 오버라이드해서 만들어진 directive이기 때문에

알아서 ng-model앞에 $parent가 붙어버린다는것같은데... 잘모르겠음

여하튼

<textarea ng-model="myText"></textarea>
<textarea ng-model="$parent.myText"></textarea>

아래것으로 하면됨


또한 이미 정해져있는 텍스트에어리어내용의 속성이 저장되기를 바라면

<textarea ng-model="todo.note"></textarea> 이런식으로 하면 됨


checkbox..completed 원리랑 비슷

반응형
반응형

아 빡치네

angular is not defined 뜰때

<script type="text/javascript" src="../angular.min.js"></script>

  <script type="text/javascript" src="test.js"></script>

<script type="text/javascript" src="../angular-ng-route.min.js"></script>

이거 불러오는거 순서에 주의해야함
angular.js를 최초로 안불러오고 본인의 test.js 같은것부터 먼저불러오면
angular is not defined 에러발생함


반응형
반응형

Directives

란 <ng-repeat> <ng-show>와 같이 js에서 사용하는 함수? 같은 것 같다.
개발하면서 나중에는 없는 directives를 사용해야 하기 때문에 직접 만드는 방법도 알아야 한다.

<html ng-app="myapp">
<head>
  <title>Hello World in AngularJS</title>
  <script src="../angular.min.js"></script>
<script src="test.js"></script>
</head>
  <body ng-controller="MainCtrl">
    <hello-world/>
  </body>
</html>


var app = angular.module('myapp', []);

app.controller('MainCtrl', function($scope) {
  $scope.name = 'World';
});
app.directive('helloWorld',function(){
  return {
      replace:true,
      restrict: 'AE',
      template: '<h3>Hello World!!</h3>'
  }
});

helloworld라는 directive를 만들었다. 도중에 -를 붙이는 이유는 -는 가독성을 위한 것 같다.
또한 생략처리되기때문에 붙여도 알아서 인식해준다.
-말고도 x- data- 이런것도 있다.

참고
https://www.sitepoint.com/practical-guide-angularjs-directives/


반응형
반응형

sudo apt-get install -y mongodb-org

설치


$ mkdir data $ echo 'mongod --bind_ip=$IP --dbpath=data --nojournal --rest "$@"' > mongod $ chmod a+x mongod

설정


./mongod

로 mongodb 실행


새로운 터미널을 연뒤

$ mongo 쳐서 db 명령어 수행


후에 작동시킬때

Unclean shutdown detected. 가 뜨면


mongod --repair

친뒤에

다시 ./mongod 하면 구동 가능함


참고

https://community.c9.io/t/setting-up-mongodb/1717

반응형
반응형

posts라는 배열이 있고 그 배열안에

$scope.posts.push({

  title: 'hi',

  upvotes: 0,

  comments: [

    {author: 'Joe', body: 'Cool post!', upvotes: 0},

    {author: 'Bob', body: 'Great idea but everything is wrong!', upvotes: 0}

  ]

});

로 문자열 및 배열들을 집어넣었음

만약 html로 코멘트 배열만을 다시 나타내고싶으면


<div ng-repeat="test in posts[0].comments">{{test.author}}</div> 


결과

Joe
Bob


반응형
반응형


<html>

<head>

  <title>Flapper News</title>

  <script src="/angular.min.js"></script>

  <script src="/angular-ui-router.js"></script>

    <script src="EX1.js"></script>

<body ng-app="flapperNews">

  <div class="row">

    <div class="col-md-6 col-md-offset-3">

      <ui-view>default</ui-view>

    </div>

  </div>

   <script type="text/ng-template" id="/home.html">

  <div class="page-header">

    <h1>Flapper News1</h1>

    <a href="#/home2">Go P2</a>

  </div>

</script>

<script type="text/ng-template" id="/home2.html">

  <div class="page-header">

    <h1>Flapper News2</h1>

    <a href="#/home">Go P1</a>

  </div>

</script>

</body>

</html>

EX1.html

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

var app = angular.module('flapperNews', ['ui.router'])


app.config([

'$stateProvider',

'$urlRouterProvider',

function($stateProvider, $urlRouterProvider) {


  $stateProvider

    .state('home', {

      url: '/home',

      templateUrl: '/home.html'

      ,controller: 'MainCtrl'

    });

    

    $stateProvider

    .state('home2', {

      url: '/home2',

      templateUrl: '/home2.html'

      ,controller: 'MainCtrl'

    });



  $urlRouterProvider.otherwise('home');

}]);

EX1.js


이러면 EX1.html을 불러오면 js파일에 인자가 없기때문에 $urlRouterProvider.otherwise('home'); 를 실행하게 되고 home이라는 기본 스테이트로 넘어가게 되어

asd.html안에있는 /home.html 를 불러오게 된다.


https://thinkster.io/mean-stack-tutorial 참고하였음

템플릿 넘기기는 <a>태그로 가능하기도 한데 코드로 약간 복잡하게도 가능함

http://stackoverflow.com/questions/14201753/angular-js-how-when-to-use-ng-click-to-call-a-route 참고하였음

반응형

'JS > Angularjs' 카테고리의 다른 글

AngularJs - textarea ng-model 설정하고나면 공백일때  (0) 2016.06.23
AngularJs - angular is not defined  (0) 2016.06.23
AngularJS - Directives  (0) 2016.06.23
nodejs 이중 Array  (0) 2016.06.20
Cloud 9 - AngularJS가 작동안할때  (0) 2016.05.30
반응형

Cloud 9 에서는 AngularJS를 불러올때 사이트에서 참조받아서 하는 형식으로 하면 에러가 뜸

따라서 AngularJS.js파일을 받은뒤에 파일로 참조해야함.

안그럼 로드가 안됨


 angular.min.js



반응형

'JS > Angularjs' 카테고리의 다른 글

AngularJs - textarea ng-model 설정하고나면 공백일때  (0) 2016.06.23
AngularJs - angular is not defined  (0) 2016.06.23
AngularJS - Directives  (0) 2016.06.23
nodejs 이중 Array  (0) 2016.06.20
AngularJs - ui router 페이지 이동  (0) 2016.05.31