Javascript 使用vform包在带有vue的laravel中未定义变量

Javascript 使用vform包在带有vue的laravel中未定义变量,javascript,php,laravel,vue.js,Javascript,Php,Laravel,Vue.js,我不知道我的代码在控制器中发生了什么。我只想根据我的vue组件中的选择选项发送一封电子邮件。它只是说未定义的变量请求。Im使用vue的vform包。但是在我的控制器中,我已经使用vue组件中选择选项的id定义了请求变量。但当我把一些静态电子邮件,它可以发送电子邮件,它的工作。有人知道解决方案是什么吗?谢谢 在“网络”选项卡中预览时出错 {message: "Undefined variable: request", exception: "ErrorException",…} exception

我不知道我的代码在控制器中发生了什么。我只想根据我的vue组件中的选择选项发送一封电子邮件。它只是说
未定义的变量请求
。Im使用vue的vform包。但是在我的控制器中,我已经使用vue组件中选择选项的id定义了请求变量。但当我把一些静态电子邮件,它可以发送电子邮件,它的工作。有人知道解决方案是什么吗?谢谢

在“网络”选项卡中预览时出错

{message: "Undefined variable: request", exception: "ErrorException",…}
exception: "ErrorException"
file: "C:\Users\bustillo-ronald\Desktop\Laravel-SPA\app\Http\Controllers\API\UserController.php"
line: 196
message: "Undefined variable: request"
trace: [,…]
我的控制器

    public function sendEmail(Request $request){

        $beautymail = app()->make(\Snowfire\Beautymail\Beautymail::class);
        $beautymail->send('emails.welcome', [], function($message)
         {
            $message
                ->from('test@gmail.com')
                //->to('sampleemail@gmail.com')//this is working with static data
                ->to($request->email)
                ->subject('Welcome!');
        });
    }
我的vue组件与vform

           <form @submit.prevent="sendEmail()">
                    <div class="modal-body">
                        <div class="form-group">
                            <label>Users Lsit</label>
                            <select v-model="form.email" name="email" id="email" class="form-control" :class="{ 'is-invalid': form.errors.has('email') }">
                                <option  v-for="user in users.data" :key="user.id" >{{user.email}}</option>
                            </select>
                            <has-error :form="form" field="type"></has-error>
                        </div>
                        <div class="form-group">
                            <label>Message</label>
                            <textarea v-model="form.message" name="message" placeholder="Message" class="form-control" :class="{ 'is-invalid': form.errors.has('message') }"></textarea>
                            <has-error :form="form" field="message"></has-error>
                        </div>
                    </div>

                    <div class="modal-footer">
                        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
                        <button type="submit" class="btn btn-primary">Send Email</button>
                    </div>
                       </form>
Vue开发工具

您没有在闭包内传递
$request
变量

public function sendEmail(Request $request){

    $beautymail = app()->make(\Snowfire\Beautymail\Beautymail::class);
    $beautymail->send('emails.welcome', [], function($message) use($request) // add use($request)
     {
        $message
            ->from('test@gmail.com')
            //->to('sampleemail@gmail.com')//this is working with static data
            ->to($request->email)
            ->subject('Welcome!');
    });
}

哇!谢谢你的回答,先生。这对我有用。对不起,我不太了解拉威尔。但真的非常感谢
public function sendEmail(Request $request){

    $beautymail = app()->make(\Snowfire\Beautymail\Beautymail::class);
    $beautymail->send('emails.welcome', [], function($message) use($request) // add use($request)
     {
        $message
            ->from('test@gmail.com')
            //->to('sampleemail@gmail.com')//this is working with static data
            ->to($request->email)
            ->subject('Welcome!');
    });
}