이번에는 내보내기와 module.exports 사용법과, 내보내기와 module.exports 사용 시 주의사항에 대해 알려드리겠습니다. 실제 사례를 살펴보겠습니다.
1. 내보내기는 module.exports의 보조 개체입니다. 내보내기가 외부 세계에 API를 제공하는 경우 return을 사용하여 내보내기 개체를 반환해야 합니다. 2. module.exports는 API를 외부 세계에 직접 제공할 수도 있습니다 참고:
https://github.com/seajs/seajs/issues/242
내보내기는 외부 세계에 모듈 인터페이스를 제공하는 데 사용되는 개체입니다. rreee 내보내기 개체에 멤버를 추가하는 것 외에도 return을 사용하여 외부 세계에 인터페이스를 직접 제공할 수도 있습니다.
rreeereturn 문이 모듈의 유일한 코드인 경우 다음과 같이 단순화할 수도 있습니다.
define(function(require, exports) { // 对外提供 foo 属性 exports.foo = 'bar'; // 对外提供 doSomething 方法 exports.doSomething = function() {}; });
위 형식은 JSONP 모듈을 정의하는 데 특히 적합합니다.
특별 참고 사항: 다음 작성 방법은 잘못되었습니다!
rreee이를 작성하는 올바른 방법은 return을 사용하거나 module.exports에 값을 할당하는 것입니다:
define(function(require) { // 通过 return 直接提供接口 return { foo: 'bar', doSomething: function() {} }; });
팁: 내보내기는 module.exports에 대한 참조일 뿐입니다. 내보내기가 팩토리 내에서 재할당되면 module.exports 값은 변경되지 않습니다. 따라서 내보내기에 값을 할당하는 것은 유효하지 않으며 모듈 인터페이스를 변경하는 데 사용할 수 없습니다.
module.exports 개체
현재 모듈이 외부 세계에 제공하는 인터페이스입니다. 팩토리
constructor에 전달된 내보내기 매개변수는 module.exports 개체에 대한 참조입니다. 내보내기 매개변수를 통해서만 인터페이스를 제공하면 개발자의 모든 요구 사항을 충족할 수 없는 경우가 있습니다. 예를 들어, 모듈의 인터페이스가 특정 클래스의 인스턴스인 경우 module.exports를 통해 구현해야 합니다.
define({ foo: 'bar', doSomething: function() {} });
참고: module.exports에 대한 할당은 동기적으로 실행되어야 하며 콜백 함수
에 배치할 수 없습니다. 다음은 작동하지 않습니다: define(function(require, exports) {
// 错误用法!!!
exports = {
foo: 'bar',
doSomething: function() {}
};
});
y.js에서 위의 x.js는 다음과 같습니다.define(function(require, exports, module) {
// 正确写法
module.exports = {
foo: 'bar',
doSomething: function() {}
};
});
이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
vueJS에서 파일을 업로드할 때 진행률 표시줄이 표시되는 배열 변경 감지 문제
위 내용은 내보내기 및 module.exports를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!