2016-09-15 5 views
1

기본 응용 프로그램 코드를 건드리지 않고 특정 고객의 요구에 따라 대부분의 구성 요소를 나중에 대체 할 수있는 기본 응용 프로그램을 만들 계획입니다. 반응 생태계 내에서 이것을 달성하는 가장 좋은 방법은 무엇입니까? 업데이트 할 수있는 레지스트리 또는 GWT replace-with 구조와 유사한 다른 지연된 바인딩이 있습니까? 감사.React 구성 요소를 바꾸는 방법

업데이트 1 : 내 이해는 종속성 삽입을 사용하면 정적 구성 요소에 주입 할 수 있습니다. 필자가 묻는 질문은 레지스트리를 구현하고 구성 요소 레지스트리 키를 통해 응용 프로그램을 구성 할 수 있는지 여부에 대한 것입니다. 따라서 나중에 업데이트를 통해 해당 키를 확인할 구성 요소를 지정할 수 있습니다. React는 거기에 정적 인 관계를 기대하는 것처럼 보이고 가능하다면 그것을 동적으로하고 싶습니다.

+1

[React dependency injection or similar?]의 가능한 복제본 (http://stackoverflow.com/questions/30311081/react-dependency-injection-or-similar) –

답변

0

아니요, 중앙 레지스트리는 없지만 레지스트리를 만드는 것은 어렵지 않습니다. (JS 구문을 혼합 미안)와 같은 뭔가

// Registry module 
var Component1 = require('component1') 
var components = { Component1 } 
var replace = function(name, cfn) { components[name] = cfn } 

// Render module 
var registry = require('registry') 
var Component1 = registry.components['Component1'] 
render...Component1 

// Override module 
var registry = require('registry') 
var Component1override = require('component1override') 
registry.replace('Component1', Component1override) 

유일한 트릭은 무시 모듈이 렌더링 모듈 전에로드되는 것을 확신하는 것입니다.

관련 문제