답변:
그들이 그들이 Sass보다 LESS를 선택한 것과 같은 이유라고 생각합니다.-Magento 2가 처음 시작되었을 때 React는 그 뒤에 큰 안정적인 커뮤니티를 가지고 있지 않았습니다. 내 의견으로는 마 젠토에게 과잉으로 보일 것입니다.
녹아웃은 가벼우 며 과도하지 않으며 마 젠토가 당시 요구했던 요구 사항을 충족합니다.
Magento의 React 기반 프로그레시브 웹 앱 (PWA) 버전이 있는데, 올해 어느 시점에 체크 아웃 할 수 있지만 초기 개념 단계에 있기 때문에 출시 날짜는 없습니다. 이에 대한 정보는 여기 를 참조 하십시오 .
Magento 2가 반응을 사용하여 빌드 된 경우 질문은 "왜 Angular 또는 KnockoutJs를 사용하지 않습니까?"입니다.
Angular를 사용하여 빌드 된 경우 ... 어디로 가고 있는지 알 수 있습니다.
나는 이것에 대한 권위는 아니지만, 팀이 KOjs에 더 편하고 로드맵을 기반으로 그들의 요구에 적합했기 때문에 그것이 선택한 무기라고 추측합니다.
여기에 대한 자세한 읽기 (이하 이상 말대꾸를 선택하는 이유와 비슷한 논쟁이 있었다 : https://alankent.me/2016/05/21/magento-2-community-project-moving-from-less-to-sass/ )
또한 Symfony가 아닌 ZF에 대한 토론도 들었습니다. 똑같은 것은 작업에 적합한 도구, 편안한 도구를 선택하는 것입니다.
어쨌든 ... 당신은이 선택에 대해 너무 많이 제한되지 않습니다. 특히 프론트 엔드 용으로 가장 적합한 기술 스택을 선택할 수 있습니다.
추가 노력을 기울여야 할 수도 있지만 한 번만 수행하면 향후 프로젝트에서 결과를 재사용 할 수 있습니다.
예를 들어 반응으로 magento에 이미 프로젝트가 있습니다.
: 여기에 멋진 리카르도 템페에서 보라입니다 https://www.youtube.com/watch?v=ElZ5UtTXpzQ
반응 사이에 또한 여기에 프록시를 찾을 수 젠토는 : https://github.com/McFizh/magento2-react
당신은 온라인으로 간단한 검색으로 더 많은 것을 찾을 수 있습니다.
공식적인 이유를 모르지만 그것을 사용한 Knockout은 훨씬 더 가벼워 보이며 최소한의 Angular 또는 React보다 Magento2 프론트 엔드 템플릿과 통합하기 위해 필요한 최소한의 필수 요소를로드합니다.
또한 쉬운 방법 RequireJS와 gulp는 녹아웃과 자동으로 혼합되어로드 시간과 파일 크기를 줄이는 것이 중요했을 것으로 예상되지만 Magento2를 계획 할 때는 상당히 특정한 프런트 엔드 속도가 주요 고려 사항이었습니다.
더 좋은 질문은 왜 m2가 프론트 엔드와 그렇게 많이 결합되어 있는가하는 것입니다.
M2가 출시되었을 때 이미 많은 JS 프레임 워크가있었습니다.
M2 사람들이 다음과 같은 경우 훨씬 더 인기가 있었을 것입니다.
기본적으로 많은 ET ALS. 그러나 아니오, 그들은 당신이 오버 엔지니어링 된 프론트 엔드, XML 기반 괴물을 사용하도록 강요합니다.
좋은 점은 REST API가 있으므로 헤드리스를 사용하여 점진적인 웹 앱을 구축 할 수 있다는 것입니다.
걱정하지 마십시오. Anton Kril이 MageConf2017에서 발표 한 것처럼 Magento2 프론트 엔드는 2.4 버전부터 반응 할 것입니다. 또한 Redux와 GraphQL도 있습니다. 하지만 ... Knockout.js는 그대로 유지됩니다.
webapi
영역을 사용하기 때문에 이것을 어렵게 만듭니다 . 새로운 API가 적합합니다. PWA Studio는 필요한 사람들에게 기반을 제공하는 방법입니다.