react-laravel
사용하면 선택적 서버 측 렌더링과 함께 블레이드 보기에서 바로 ReactJS 구성 요소를 사용할 수 있으며, 눈에 거슬리지 않는 JavaScript로 인해 React와 함께 클라이언트 측에서 사용할 수 있습니다.
react-laravel
v8js PHP 확장에 간접적으로 종속된다는 점을 아는 것이 중요합니다.
여기에서 설치 방법을 볼 수 있습니다: v8js 설치 방법.
composer.json
의 minimum-stability
dev
로 설정하고 다음을 추가하세요.
"최소 안정성": "개발자"
그런 다음 다음을 실행하십시오.
$ 작곡가는 talyssonoc/react-laravel:0.11을 필요로 합니다.
그런 다음 Laravel 앱의 config/app.php
파일에서 공급자에 이를 추가해야 합니다.
'ReactReactServiceProvider'
그런 다음 다음을 실행합니다.
PHP 장인 공급업체:게시
그리고 react.php
파일은 앱의 config
폴더에서 사용할 수 있습니다.
설치 및 구성 후에는 보기에서 @react_component
지시문을 사용할 수 있습니다.
@react_component
지시문은 3가지 인수를 허용합니다:
@react_comComponent(<컴포넌트 이름>[, props, options]) //예제 @react_comComponent('Message', [ 'title' => 'Hello, World' ], [ 'prerender' => true ]) // 네임스페이스 컴포넌트를 사용하는 예 @react_comComponent('Acme.Message', [ 'title' => 'Hello, World' ], [ 'prerender' => true ])
componentName
: 구성요소를 보유하는 전역 변수의 이름입니다. 네임스페이스 구성 요소를 사용할 때 구성 요소 이름에 점 표기법을 사용할 수 있습니다.
props
: 컴포넌트에 전달될 props
의 연관
options
: react-laravel
에 전달할 수 있는 옵션의 연관 배열:
prerender
: React-laravel에게 구성 요소를 서버 측에서 렌더링한 다음 클라이언트 측에 마운트하도록 지시합니다. 기본값은 true 입니다.
tag
: 구성요소를 보유할 요소의 태그입니다. 기본값은 'div' 입니다.
html 속성 : 구성 요소의 래퍼 요소에 추가될 다른 유효한 HTML 속성입니다. 예: 'id' => 'my_component'
.
모든 구성 요소는 public/js/components.js
(구성 가능, 아래 참조) 내에 있어야 하며 전역적이어야 합니다.
여러분의 뷰에는 반드시 react.js
, react-dom.js
, react_ujs.js
(순서대로)를 포함시켜야 합니다. laravel-elixir를 사용하여 이러한 파일을 함께 연결할 수 있습니다.
react-laravel
ReactJS 설치 및 react_us.js
파일을 제공하며, react-laravel
설치하고 다음을 실행하면 public/vendor/react-laravel
폴더에 있습니다.
$ php artisan Vendor:publish --force
react-laravel
에서 제공하는 파일과 components.js
파일을 사용하려면 다음을 뷰에 추가하세요.
<script src="{{ 자산('vendor/react-laravel/react.js') }}"></script> <script src="{{ 자산('vendor/react-laravel/react-dom.js') }}"></script> <script src="{{ 자산('js/comComponents.js') }}"></script> <script src="{{ 자산('vendor/react-laravel/react_ujs.js') }}"></script>
React-laravel에서 제공하는 버전( composer.json
참조)과 다른 버전을 사용하려면 이를 구성해야 합니다(아래 참조).
config/react.php
파일에서 설정을 react-laravel
로 변경할 수 있습니다:
return ['source' => 'path_for_react.js','dom-source' => 'path_for_react-dom.js','dom-server-source' => 'path_for_react-dom-server.js','comComponents' => [ 'path_for_file_포함_your_comComponents.js' ] ];
모두 선택 사항입니다.
source
: 기본값은 public/vendor/react-laravel/react.js
입니다.
dom-source
: 기본값은 public/vendor/react-laravel/react-dom.js
입니다.
dom-server-source
: 기본값은 public/vendor/react-laravel/react-dom-server.js
입니다.
components
: 기본값은 public/js/components.js
입니다. 여기에 여러 구성 요소 파일을 지정할 수 있습니다.
components.js
파일도 뷰에 포함되어야 하며 모든 구성 요소는 window
개체에 있어야 합니다.
이 패키지는 반응 레일에서 영감을 받았습니다.