0

実装した新しいデザインに対応するために、Laravel Spark でデフォルトの登録フォームを編集してみました。ただし、次のように、「v-if」が機能せず、すべてのページ コンポーネントが表示される登録ページに問題があります。

画像: https://i.gyazo.com/2b00ac14ec441649c9951ba3e216ed0e.png (画像の直接投稿は不可)。

レイアウト ブレードのコードは次のとおりです (resources/views/vendor/spark/layouts/guest.blade.php):

<!DOCTYPE html>
<html lang="en">
<head>
    <!-- Meta Information -->
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <!-- Page Title -->
    <title>@yield('title', config('app.name'))</title>

    <!-- Material Design Icons  -->
    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">

    <!-- Roboto Web Font -->
    <link href="https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en" rel="stylesheet">

    <!-- MDK -->
    <link type="text/css" href="{{ asset('vendor/material-design-kit.css') }}" rel="stylesheet">

    <!-- Sidebar Collapse -->
    <link type="text/css" href="{{ asset('vendor/sidebar-collapse.min.css') }}" rel="stylesheet">

    <!-- App CSS -->
    <link type="text/css" href="{{ asset('css/style.min.css') }}" rel="stylesheet">

    <!-- Sweetalert CSS -->
    <link href="/css/sweetalert.css" rel="stylesheet">

    <!-- Extra Page Scripts -->
    @yield('scripts', '')

    <!-- Global Spark Object -->
    <script>
        window.Spark = <?php echo json_encode(array_merge(
            Spark::scriptVariables(), []
        )); ?>;
    </script>
</head>
<body class="@yield('body-class')">
    <div id="spark-app" v-cloak>
        <div class="row">
            <!-- Main Page Content -->
            @yield('content')
        </div>
    </div>

    <!-- jQuery -->
    <script src="{{ asset('vendor/jquery.min.js') }}"></script>

    <!-- Bootstrap -->
    <script src="{{ asset('vendor/tether.min.js') }}"></script>
    <script src="{{ asset('vendor/bootstrap.min.js') }}"></script>

    <!-- MDK -->
    <script src="{{ asset('vendor/dom-factory.js') }}"></script>
    <script src="{{ asset('vendor/material-design-kit.js') }}"></script>

    <!-- Sidebar Collapse -->
    <script src="{{ asset('vendor/sidebar-collapse.js') }}"></script>

    <!-- App JS -->
    <script src="{{ asset('js/main.min.js') }}"></script>

    <!-- Spark JS -->
    <script src="{{ mix('js/app.js') }}"></script>
    <script src="/js/sweetalert.min.js"></script>

</body>
</html>

また、登録ページ自体の Blade のコードは次のとおりです (resources/views/vendor/spark/auth/register-spark.blade.php):

@extends('spark::layouts.guest')

@section('title', 'Register')
@section('body-class', 'register')

@section('scripts')
    <script src="https://js.stripe.com/v2/"></script>
@endsection

@section('content')
<div class="row">
    <spark-register-stripe inline-template>
        <div class="col-sm-8 push-sm-1 col-md-4 push-md-3 col-lg-4 push-lg-4">

            <div class="text-xs-center m-2">
                <div class="icon-block rounded-circle">
                    <i class="material-icons md-36 text-muted">edit</i>
                </div>
            </div>

            <div align="center">
                <h1>Register</h1>
            </div>

            <br />

            <!-- Common Register Form Contents -->
            @include('spark::auth.register-common')

            <br />

            <!-- Billing Information -->
            <div class="card" v-if="selectedPlan && selectedPlan.price > 0">
                <div class="card-header bg-white text-xs-center">
                    <h4 class="card-title">Billing Information</h4>
                </div>
                <div class="p-2">
                    <!-- Generic 500 Level Error Message / Stripe Threw Exception -->
                    <div class="alert alert-danger" v-if="registerForm.errors.has('form')">
                        We had trouble validating your card. It's possible your card provider is preventing
                        us from charging the card. Please contact your card provider or customer support.
                    </div>

                    <form role="form">
                        <!-- Billing Address -->
                        @if (Spark::collectsBillingAddress())
                            @include('spark::auth.register-address')
                        @endif

                        <!-- Cardholder's Name -->
                        <div class="form-group">
                            <label for="name">Cardholder's Name</label>
                            <input type="text" class="form-control" name="name" id="name" placeholder="Cardholder's Name" v-model="cardForm.name">
                        </div>

                        <!-- Card Number -->
                        <div class="form-group">
                            <label for="number">Card Number</label>
                            <input type="text" class="form-control" name="number" id="number" placeholder="Card Number" data-stripe="number" v-model="cardForm.number">

                            <small class="text-help" v-show="registerForm.errors.has('number')">
                                @{{ registerForm.errors.get('number') }}
                            </small>
                        </div>

                        <!-- Security Code (CVC) -->
                        <div class="form-group">
                            <label for="cvc">Security Code (CVC)</label>
                            <input type="text" class="form-control" name="cvc" id="cvc" placeholder="Security Code (CVC)" data-stripe="cvc" v-model="cardForm.cvc">
                        </div>

                        <!-- Expiration -->
                        <div class="form-group">
                            <label>Card Expiration Date</label>

                            <div class="row">
                                <!-- Month -->
                                <div class="col-md-6">
                                    <input type="text" class="form-control" name="month" placeholder="Expiration Month (MM)" maxlength="2" data-stripe="exp-month" v-model="cardForm.month">
                                </div>

                                <!-- Year -->
                                <div class="col-md-6">
                                    <input type="text" class="form-control" name="year" placeholder="Expiration Year (YYYY)" maxlength="4" data-stripe="exp-year" v-model="cardForm.year">
                                </div>
                            </div>
                        </div>

                        <!-- ZIP/Postal Code -->
                        <div class="form-group" v-if=" ! spark.collectsBillingAddress">
                            <label for="zip">ZIP/Postal Code</label>
                            <input type="text" class="form-control" name="zip" id="zip" placeholder="ZIP/Postal Code" v-model="registerForm.zip">

                            <small class="text-help" v-show="registerForm.errors.has('zip')">
                                @{{ registerForm.errors.get('zip') }}
                            </small>
                        </div>

                        <!-- Coupon Code -->
                        <div class="form-group" v-if="query.coupon">
                            <label for="coupon">Coupon Code</label>
                            <input type="text" class="form-control" name="coupon" id="coupon" placeholder="Coupon Code" v-model="registerForm.coupon">

                            <small class="text-help" v-show="registerForm.errors.has('coupon')">
                                @{{ registerForm.errors.get('coupon') }}
                            </small>
                        </div>

                        <!-- Terms And Conditions -->
                        <div class="form-group">
                            <div class="checkbox">
                                <label>
                                    <input type="checkbox" v-model="registerForm.terms">
                                    I Accept The <a href="/terms" target="_blank">Terms Of Service</a>

                                    <small class="text-help" v-show="registerForm.errors.has('terms')">
                                        @{{ registerForm.errors.get('terms') }}
                                    </small>
                                </label>
                            </div>
                        </div>

                        <!-- Tax / Price Information -->
                        <div class="form-group" v-if="spark.collectsEuropeanVat && countryCollectsVat && selectedPlan">
                            <label class="col-md-4 control-label">&nbsp;</label>

                            <div class="col-md-6">
                                <div class="alert alert-info" style="margin: 0;">
                                    <strong>Tax:</strong> @{{ taxAmount(selectedPlan) | currency }}
                                    <br><br>
                                    <strong>Total Price Including Tax:</strong>
                                    @{{ priceWithTax(selectedPlan) | currency }} / @{{ selectedPlan.interval | capitalize }}
                                </div>
                            </div>
                        </div>

                        <!-- Register Button -->
                        <div class="form-group" align="center">
                            <button type="submit" class="btn btn-primary" @click.prevent="register" :disabled="registerForm.busy">
                                <span v-if="registerForm.busy">
                                    <i class="fa fa-btn fa-spinner fa-spin"></i>Registering
                                </span>
                                <span v-else>
                                    <i class="fa fa-btn fa-check-circle"></i>Register
                                </span>
                            </button>
                        </div>

                        <div class="text-xs-center">Already signed up? <a href="guest-login.html">Log in</a></div>
                    </form>
                </div>
            </div>
        </div>

        <!-- Plan Features Modal -->
        @include('spark::modals.plan-details')
    </spark-register-stripe>
</div>
@endsection

誰かが私を正しい方向に向けることができれば、ここでどこが間違っているのか教えていただければ幸いです. ありがとう!

4

0 に答える 0