在laravel 8中不应静态调用非静态方法Spatiale\Analytics\Analytics::fetchMostVisitedPages()

在laravel 8中不应静态调用非静态方法Spatiale\Analytics\Analytics::fetchMostVisitedPages(),laravel,laravel-8,spatie,Laravel,Laravel 8,Spatie,我正在使用laravel 8,我正在尝试使用Spatial\Analytics,但我遇到了这个错误 不应静态调用非静态方法SPATITE\Analytics\Analytics::fetchMostVisitedPages() 我试过别人的建议,但我不知道我是否遗漏了什么。所以我希望有人能检查一下,让我知道 这是我的密码 <?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Ht

我正在使用laravel 8,我正在尝试使用Spatial\Analytics,但我遇到了这个错误

不应静态调用非静态方法SPATITE\Analytics\Analytics::fetchMostVisitedPages()

我试过别人的建议,但我不知道我是否遗漏了什么。所以我希望有人能检查一下,让我知道

这是我的密码

    <?php

    namespace App\Http\Controllers;

    use Illuminate\Support\Facades\Http;
    use Spatie\Analytics\Analytics as Analytics;
    use Spatie\Analytics\Period;

    class GoogleReportController extends Controller
    {
        public function index()
        {
            $test = Analytics::fetchMostVisitedpages(Period::days(7));
            dd($test);
        }
    }
正如您所见,
分析的类方法不是静态的,因此您不能静态调用它们。它打算用作一个单例(这是有充分理由的)。Laravel为singleton类提供了“包装器”,以允许类似静态的访问,在这个库中,您可以使用如下一种:

<?php

namespace App\Http\Controllers;

use Illuminate\Support\Facades\Http;
use Spatie\Analytics\AnalyticsFacade as Analytics; //Change here
use Spatie\Analytics\Period;

class GoogleReportController extends Controller
{
    public function index()
    {
        $test = Analytics::fetchMostVisitedpages(Period::days(7));
        dd($test);
    }
}

尝试添加:使用分析;我已经这样做了,但是我的phpStorm告诉我这是一个未定义的类