【发布时间】:2020-12-14 19:27:48
【问题描述】:
我正在尝试构建一个 crud 应用程序,我想将 react-routes 与 laravel 和 AdminLte 一起使用,因为当我访问页面时不需要刷新但我遇到了一些问题..
- 我想在 AdminLte 侧栏中使用 react-router 链接,我创建了一个侧栏刀片文件,就像这样
<div id="sidebar"></div>
并像这样将它包含在我的 admin.blade.php 中
<div class="wrapper">
@include('layouts.partials.nav')
@include('layouts.partials.sidebar')
<div class="content-wrapper">
<section class="content-header">
<div class="container-fluid">
<div class="row mb-2">
<div class="col-sm-6">
<h1>@yield('content-header')</h1>
</div>
<div class="col-sm-6 text-right">
@yield('content-actions')
</div>
</div>
</div>
</section>
<section class="content">
@yield('content')
</section>
</div>
<aside class="control-sidebar control-sidebar-dark">
<!-- Control sidebar content goes here -->
</aside>
</div>
<script src="{{ asset('js/app.js') }}"></script>
@yield('js')
</body>
之后,我为侧边栏创建了一个 javascript 文件并在那里使用反应路由链接。
我有一个 home.blade.php 文件
@extends('layouts.admin')
@section('content')
<div id="home">
</div>
@endsection
我还为家庭创建了一个 javascript 文件。 如您所见,我使用了 AdminLte,而我想要做的是,当我单击侧栏中的链接时,我想更改主屏幕中的组件,但因为它们位于延迟刀片文件中,所以我不能。
我这样实现主js文件
if (document.getElementById("sidebar")) {
ReactDOM.render(<SIDE />, document.getElementById("sidebar"));
}
if (document.getElementById("home")) {
ReactDOM.render(<INDEX />, document.getElementById("home"));
}
【问题讨论】:
-
javascript 是客户端语言,php (laravel) 是服务器端。它们是两种不同的东西
-
我知道这个 js 文件是 JSX 文件它们是反应组件
标签: javascript php reactjs laravel react-router