• 카테고리

    질문 & 답변
  • 세부 분야

    블록체인

  • 해결 여부

    미해결

app.js 파일에 추가하고 싶은게 있는데요.

19.02.28 16:22 작성 조회수 94

0

app.js파일안에

var mysql = require('mysql'); 를 추가하여 데이터베이스에 접근하고 싶습니다.

npm을 통해서 mysql모듈 다운로드를 진행했고요.
node_modules폴더에는 mysql모듈이 잘 위치하고 있습니다.
app.js파일에서는

App = {

web3Provider: null,

contracts: {},

createAccount: function(){

var mysql = require('mysql');

...

}
부분에 모듈을 require하는 부분을 위치 시켰습니다..
근데 계속 Uncaught Error: Cannot find module 'mysql' 라는 오류가 나서요..
node_modules폴더 형제 위치로 mysql.js라는 파일을 만들어
var mysql = require('mysql'); 만을 입력하고,
powershell에서 node mysql.js 을 실행하면 모듈을 잘 불러 옵니다..
app.js에서는 node_modules폴더의 모듈을 불러올 수 없는 것인가요?ㅠ
어떻게 해야 할까요?? ㅠ

답변 1

답변을 작성해보세요.

0

안녕하세요. 이런 시도 좋습니다. 두가지 말씀드리고 싶은게 있는데요.

첫번째로는 App 오브젝트 밖에다 빼고 시도해보시기 바랍니다.

var mysql = require('mysql');

var pool = mysql.createPool({

connectionLimit: 100,

host: 'localhost',

user: 'xxxxx',

password: 'yyyyy',

database: 'zzzzz',

debug: false

});

var getConnection = function(callback) {

pool.getConnection(function(err, connection) {

callback(err, connection);

});

};

App = {

web3Provider: null,

contracts: {},

createAccount: function() {

// ....

},

두번째로는 계속 하시다 안 될 경우인데 제가 이 강좌에서 사용한 템플렛이 트러플 Boxes에서 제공하는 공식 템플렛이긴하지만 가장 low 레벨에서 제공하는 템플렛입니다. 그 말은 개별적으로 따로 추가해야되는게 많아요. 우리가 보통 개발하면서 사용하는 방식과 잘 융화되지 않을 수 있습니다. (webpack같은 것도 같이 쓰면 좋으니까요)

그래서 추천해드립니다. 아래링크로 가시면

https://truffleframework.com/boxes

여러 공식 템플렛이 있는데 그 중 webpack을 쓰시면 이런 문제없이 쉽게 덧붙이고 쓰실 수 있습니다. 리액트 하실 줄 알면 react 템플렛 쓰시구요.