Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

能不能把文档写的详细一点,小白表示完全看不懂啊 #4

Closed
yjqxq opened this issue Jul 12, 2019 · 7 comments
Closed

Comments

@yjqxq
Copy link

yjqxq commented Jul 12, 2019

能不能把文档写的详细一点,小白表示完全看不懂啊,或者出个视频教程

@largezhou
Copy link
Owner

largezhou commented Jul 12, 2019

额,,,

这是 demo 站点的代码,,,先看下?

https://github.com/largezhou/test-wechat-menu

@yjqxq
Copy link
Author

yjqxq commented Jul 12, 2019

好的谢谢

@moqiang02
Copy link

@largezhou 请问这个项目只能在Laravel框架里面使用吗?能不能集成到CI里面?

@largezhou
Copy link
Owner

@moqiang02 应该哪里都能用的,无非就是两点,1:你要搞个地方显示这个插件的 html 内容。2:要定义好这个插件请求的接口。

@moqiang02
Copy link

@largezhou 功能很强大,可能是我前端水平差,看着一堆vue和js文件,不知道从哪下手,希望大佬可以完善一下使用文档

@yjqxq
Copy link
Author

yjqxq commented Aug 1, 2019 via email

@largezhou
Copy link
Owner

largezhou commented Aug 2, 2019

Laravel 为例

https://github.com/largezhou/test-wechat-menu

0:复制 vendor/largezhou/wechat-menu/public 下的所有文件到你项目的 public/vendor/wechat-menu 下。反正就是网页中通过 domain.com/vendor/wechat-menu/***.js 能访问到的那个地方

1:定义三个路由

// 用来返回页面,打开此路由,即可看到微信菜单管理界面
Route::get('/wechat-menu', 'TestSomethingController@htmlContent');
// 插件用来处理页面中的 ajax 请求
Route::any('/wechat-menu/resources', 'TestSomethingController@wechatMenuAjax');
// 微信回调,在公众号中设置到这个路由。如果你项目中已经有了这个,可自行处理
Route::any('serve', 'TestSomethingController@wechatServe');

2:定义三个路由对应的控制器方法

<?php

namespace App\Http\Controllers;

class TestSomethingController extends Controller
{
    use \Largezhou\WechatMenu\Controller;

    public function htmlContent()
    {
        \Largezhou\WechatMenu\Manager::getInstance()->setConfig([
            /*
             * axios 请求的路由前缀,最终会请求这个地址 routePrefix/resources
             *
             * 请注意,你填写的 'wechat-menu' 和 '/wechat-menu' 是有区别的
             */
            'routePrefix' => '/wechat-menu', // 这个前缀,跟第一步中的第二个路由的前缀要一样
            /*
             * 存储微信菜单和事件设置的文件
             * 可以自行用其他方式来存储和读取
             */
            'data_path' => storage_path('wechat_menu.json'),
            /*
             * 微信事件回调出错时,返回给用户微信的消息
             */
            'handler_error_msg' => '服务器开小差了',
            /*
             * easy wechat 扩展的配置
             */
            'easyWechat' => [
                'app_id' => 'wx7c*********6ee5',
                'secret' => 'bff6***********************ce66c',
                'token' => 'L******',
                'log' => [
                    'default' => 'dev', // 默认使用的 channel,生产环境可以改为下面的 prod
                    'channels' => [
                        // 测试环境
                        'dev' => [
                            'driver' => 'single',
                            // 'path' => 'logs/wechat.log',
                            'level' => 'debug',
                        ],
                        // 生产环境
                        'prod' => [
                            'driver' => 'daily',
                            // 'path' => 'logs/wechat.log',
                            'level' => 'info',
                        ],
                    ],
                ],
            ],
        ]);

        return  \Largezhou\WechatMenu\Content::renderWechatMenu();
    }

    public function wechatMenuAjax()
    {
        // setConfig 中的配置与上面的一样,这个配置步骤,正常应该放到一个应用启动的地方
        \Largezhou\WechatMenu\Manager::getInstance()->setConfig([...]);

        // 此方法是通过 use \Largezhou\WechatMenu\Controller; 引入的
        return $this->resources();
    }

    public function serve()
    {
        // setConfig 中的配置与上面的一样,这个配置步骤,正常应该放到一个应用启动的地方
        \Largezhou\WechatMenu\Manager::getInstance()->setConfig([...]);

        return \Largezhou\WechatMenu\Manager::getInstance()->serve();
    }
}

@largezhou largezhou pinned this issue Aug 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants