vue cli는 vue.js 로 프로젝트를 구성할때 아주 편리한 도구이다. 

vue.js로 프로젝트를 구성하는데 필요한 webpack 설정이나 플러그인 등을 쉽게 연동할수 있어 프로젝트를 생성하기 쉽게 해준다.



vue cli 설치 


1
2
3
npm install -g @vue/cli
 
yarn global add @vue/cli
cs


npm이나 yarn 중에 선택하여 전역으로 인스톨한다.



프로젝트 생성


1
vue create my-project
cs


vue cli 2.0에서 3.0으로 버전이 올라가면서 바뀐점이 몇가지 있는데 프로젝트 생성할때부터 조금 달라진점이 있다.

전에는 webpack이나 browserfy 중에 템플릿을 하나 선택했었는데 아마 디폴트가 webpack으로 선택되어 있는듯하다.




프로젝트를 생성하기전에 옵션을 선택할수 있는데 default를 선택하거나

사용할 플러그인을 직접 선택하여도 된다.

나는 es6문법을 es5로 변환해주는 babel, 

페이지 이동을 위한 vue-router , 

vue에서 전역으로 상태관리를 하는 vuex를 선택했다.

개인적으로 그 외에는 선호하지않거나 딱히 필요성을 못느끼겠다.




프로젝트가 생성되면 이런식으로 구성이 되어있는데 vue-cli 2.0 버전과 다른점은

정적 파일을 보관하던 static 폴더가 사라지고 아마 public으로 변경된것 같다.

그리고 중요한 설정파일이 있던 config폴더가 사라져 webpack 설정을 할 수 있는 부분이 없어졌다.

기존에는 config 폴더에서 포트 변경이나 public path를 변경하거나 public assets 디렉토리를 지정하거나 했었는데

설정 폴더가 사라졌다.

vue-cli 3.0 가이드와 레퍼런스 문서를 보니 아마 설정파일을 직접 만들고 추가하는 식으로 변경된것같다.




실행 명령어도 조금 바뀌었다.


1
2
3
4
5
6
7
// 개발모드로 실행
npm run serve
yarn serve
 
// 배포용 빌드
npm run build 
yarn build
cs



3.0으로 버전이 올라가면서 조금 낯선부분들이 보이는데 

시간 날때마다 기존의 명령어나 기능, 설정법이 어떻게 바뀌었는지 조금씩 찾아보고 적응해야 겠다.









create-react-app 글로벌 install, 프로젝트 생성


1
2
npm install -g create-react-app
create-react-app my-app
cs


프로젝트 디렉터리로 이동후  프로젝트 실행


1
npm start
cs



생성된 프로젝트 구조





'React.js' 카테고리의 다른 글

리액트 state React state  (0) 2018.06.30
리액트 props React props  (0) 2018.06.30
React 조건부 렌더링  (0) 2018.06.29
React 컴포넌트 내부에서 변수, 함수 사용  (0) 2018.06.28
React 컴포넌트  (0) 2018.06.28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        SELECT
            PRO_ID as id,
            PRO_NAME as name,
            TO_CHAR(PRO_START_DATE, 'YYYY-MM-DD HH24:MI:SS') as startDate,
            TO_CHAR(PRO_CLOSE_DATE, 'YYYY-MM-DD HH24:MI:SS') as closeDate,
            PRO_PROGRESS as progress    
        FROM
            PJ_PROJECT 
        WHERE
            PRO_ID = #{id}
 
            //밀리세컨드 YYYY-MM-DD 변환 함수
            TO_CHAR(PRO_START_DATE, 'YYYY-MM-DD HH24:MI:SS') as startDate,
            TO_CHAR(PRO_CLOSE_DATE, 'YYYY-MM-DD HH24:MI:SS') as closeDate,
cs

'SQL' 카테고리의 다른 글

오라클 시간환산  (0) 2018.07.11
오라클 WITH  (0) 2018.07.11
유효성 검사 쿼리  (0) 2017.03.29
mysql 날짜 차이구하기  (0) 2017.02.26
프로시저  (0) 2017.02.26
1
2
3
4
-      background:url('./img_game/background/1.png') no-repeat center top;
-      -webkit-background-size: cover;
-      -moz-background-size: cover;
-      -o-background-size: cover;
cs


'HTML&CSS' 카테고리의 다른 글

수직가운데정렬  (0) 2017.02.26
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!-- mysql 접속 datasource 풀생성 -->
    <bean id="dataSource-hrdmarket" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="" />
        <!-- <property name="url" value="" /> -->
        <property name="username" value="" /> 
        <property name="password" value="" /> 
        <!-- validationQuery:유효 검사용 쿼리 --> 
        <property name="validationQuery" value="select 1"/>
        <!-- testWhileIdle:컨넥션이 놀고 있을때 -_-; validationQuery 를 이용해서 유효성 검사를 할지 여부. -->
        <property name="testWhileIdle" value="true"/>
        <!-- timeBetweenEvictionRunsMillis:해당 밀리초마다 validationQuery 를 이용하여 유효성 검사 진행 -->
        <property name="timeBetweenEvictionRunsMillis" value="7200000"/>
    </bean>
 
cs


'SQL' 카테고리의 다른 글

오라클 WITH  (0) 2018.07.11
oracle date YYYY-MM-DD 변환  (0) 2017.05.11
mysql 날짜 차이구하기  (0) 2017.02.26
프로시저  (0) 2017.02.26
MySql 테이블 명세서 쿼리  (0) 2017.02.26
1
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
cs


jstl 추가


1
2
3
4
5
6
7
8
<c:choose>
    <c:when test="${fn:length(map.movKorName) > 8}">
        <c:out value="${fn:substring(map.movKorName,0,7)}"/>....
    </c:when>
    <c:otherwise>
        <c:out value="${map.movKorName}"/>
    </c:otherwise> 
</c:choose>
cs



'JSP&Servlet' 카테고리의 다른 글

getGeneratedKeys insert후 생성된 행의 키 받아오기  (0) 2017.02.26
커넥션 풀  (0) 2017.02.26
이벤트 리스너(event listener)  (0) 2017.02.26
ServletContext / ServletConfig init-param 차이점  (0) 2017.02.26
필터  (0) 2017.02.26
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>    
<script type="text/javascript">
   
    google.charts.load('current', {'packages':['corechart']});
    google.charts.setOnLoadCallback(drawChart1);
    google.charts.setOnLoadCallback(drawChart2);    
 
       
    function drawChart1() {
    
        // Create the data table.
        var data1 = new google.visualization.DataTable();
        data1.addColumn('string''Topping');
        data1.addColumn('number''Slices');
        data1.addRows([
          ['남성'3],
          ['여성'1],
        ]);
        
        // Set chart options
        var options1 = {'title':'성별 예매 분포',
                       'width':400,
                       'height':300};
        
        // Instantiate and draw our chart, passing in some options.
        
        var chart1 = new google.visualization.PieChart(document.getElementById('chart_div1'));
        chart1.draw(data1, options1);
    } 
                
    function drawChart2() {
    
        // Create the data table.
        var data2 = new google.visualization.DataTable();
        data2.addColumn('string''Topping');
        data2.addColumn('number''Slices');
        data2.addRows([
          ['10대'3],
          ['20대'1],
          ['30대'1],
          ['40대'1],
          ['50대이상'1],
        ]);
        
        // Set chart options
        var options2 = {'title':'연령별 예매 분포',
                       'width':400,
                       'height':300,
                       'pieHole'0.4,};
        
        // Instantiate and draw our chart, passing in some options.
        
        var chart2 = new google.visualization.PieChart(document.getElementById('chart_div2'));
        chart2.draw(data2, options2);
    }          
                       
</script>
cs


콜백 추가시에 


google.charts.setOnLoadCallback(drawChart1);

google.charts.setOnLoadCallback(drawChart2);


data1 options1 chart1 

data options chart 부분에서 숫자를넣어 구분지어준다



'Etc' 카테고리의 다른 글

git / sourcetree commit & push 사용법  (0) 2017.02.26
gitignore.io  (0) 2017.02.26

app_route.js


1
2
3
4
5
6
7
8
9
10
11
12
var express = require('express');
var app = express();
 
var router1 = require('./routes/test1')(app);
app.use('/test1',router1);
 
var router2 = require('./routes/test2')(app);
app.use('/test2',router2);
 
app.listen(3000function(){
  console.log('Connected 3000 port');
});
cs



test1.js


1
2
3
4
5
6
7
8
9
10
11
12
13
14
module.exports = function(app){
  var express = require('express');
  var route = express.Router();
  route.get('/r1'function(req, res){
    res.send('Hello /test1/r1');
  });
  route.get('/r2'function(req, res){
    res.send('Hello /test1/r2');
  });
  app.get('/test3/r1'function(req, res){
    res.send('Hello /test3/r1');
  });
  return route;
};
cs


test2.js


1
2
3
4
5
6
7
8
9
10
11
module.exports = function(app){
  var express = require('express');
  var route = express.Router();
  route.get('/r1'function(req, res){
    res.send('Hello /test2/r1');
  });
  route.get('/r2'function(req, res){
    res.send('Hello /test2/r2');
  });
  return route;
};
cs



'Node.js' 카테고리의 다른 글

session  (0) 2017.03.02
cookie-parser  (0) 2017.02.27
node.js mysql 접속/SELECT/INSERT  (0) 2017.02.27
파일업로드 / multer  (0) 2017.02.27
EJS 템플릿 엔진 / include  (0) 2017.02.26

+ Recent posts