2016-06-08 2 views
1

문제는 코드를 별도의 자바 스크립트 파일에 넣으려고한다는 것입니다. 그리고 한 파일은 이전에 index.html 파일에서 참조 된 파일의 변수를 나타냅니다.내 프론트 엔드 자바 스크립트 파일은 다른 자바 스크립트 파일의 변수에 액세스 할 수 없습니다.

예를 들어, 내 공용 폴더의 두 파일은 client.jstest.js입니다. 내 client.js 파일에서

, 나는이 코드를 가지고 : 내 test.js 파일에서

function init() { 
    var socket = io.connect(); 
    var temp = x; 
} 

document.addEventListener("DOMContentLoaded", init, false); 

을, 나는이 코드를 가지고 : 내 index.html 파일에서

var x = 5; 

을, 나는이 코드를 가지고 :

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Amazing Particle System</title> 
     <meta charset="utf-8"> 
     <link rel="stylesheet" type="text/css" href="style.css"> 
    </head> 
    <body> 
     <canvas id="particle"></canvas> 
     <script src="/socket.io/socket.io.js"></script> 
     <script scr="/test.js"></script> 
     <script src="/client.js"></script> 
    </body> 
</html> 

하지만 코드를 실행할 때 항상 오류가 발생합니다 :

client.js:15 Uncaught ReferenceError: x is not defined

개발자 도구에서 소스 탭에 내 test.js 파일을 볼 수 없습니다.

내 코드에서 잘못된 점이 있습니까? 문제를 어떻게 해결할 수 있습니까?

+0

어떻게 당신이 초기화 함수를 호출 할, 당신은 X를 통과하는 생각이 그것을 호출 할 때 매개 변수로? –

+0

@VladimirDrenovski io ​​연결에 대한 몇 가지 코드를 생략했습니다. 하지만 이것은 nodejs 프로젝트의 클라이언트 측에서 여러분이 아이디어를 얻을 수 있도록합니다. 이 질문에서 말했듯이'init' 함수는'client.js'에서 호출됩니다. – newguy

+2

''에서 오타를 수정해야합니다.'src'attribute 대신'scr'을 썼습니다. 그래서 스크립트가 작동하지 않습니다. –

답변

2

당신은, 당신이 scr 대신 src 속성 썼다 한 <script scr="/test.js"></script>에서 오타를 해결하는 데 .. 스크립트가 예상대로 작동하지 않는 이유입니다

관련 문제