thinkphp 前后端分离

简单记录一下之前学习tp的历程吧。

前端HTML页面渲染

<?php
namespace app\index\controller;
use think\Controller; class Index extends Controller
{
public function index()
{
return $this->fetch();
}
}

这样的话,你需要将你的前端文件放到application/index/view,view文件夹默认是没有的,需要你自己新建了,如:application/index/view/index.html

前端js/css文件渲染

一般情况js/css文件是放到public/static内,例如我这里将其新建一个admin文件夹(即为/public/static/admin)那么这时候也就是需要在刚才渲染的html内调用,这里可以使用替换

https://www.kancloud.cn/manual/thinkphp5/118120

然后在index这个控制器也就是app/index 同级目录下新建如下config.php

<?php
return [
'view_replace_str' => [
'__PUBLIC__'=>'/public/static/admin/',
],
];

然后你在前端的html文件当中输入__PUBIC__就会自动帮你替换成/public/static/admin/

当然,如果你直接__PUBLIC__的话,输出的是/public/static/admin/ 那么调用css/js文件的时候很可能就是http://localhost:8888/index.php?s=/public/static/admin/ 这样肯定是没办法调用css/js文件的。所以可以如下方案进行解决;

在/public/index.php当中添加一个常量

<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +---------------------------------------------------------------------- // [ 应用入口文件 ] // 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
define('SITE_URL','http://127.0.0.1:8888/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';

然后再把刚才的config文件写出

<?php
return [
'view_replace_str' => [
'__PUBLIC__'=>SITE_URL.'/public/static/admin/',
],
];

这样的话,__PUBLIC__的值就是http://127.0.0.1:8888//public/static/admin/

然后前端文件当中就可以正常的修改了;

例如

<link rel="stylesheet" href="__PUBLIC__/layui/css/layui.css">

最新文章

  1. linux 下安装 mysql5.7.16安装
  2. SAE使用心得1
  3. 网页引用google字体速度慢:fonts.googleapis.com
  4. addEventListener循环绑定出现的问题
  5. Android入门(二十)HttpURLConnection与HttpClient
  6. PHP实现上传文件并存进数据库的方法
  7. 如何删除TFS的Team Project
  8. 2016年11月27日 星期日 --出埃及记 Exodus 20:18
  9. IBatis 常用XML
  10. (转)Qt Model/View 学习笔记 (六)——在views中选择数据项
  11. mysql按字段分组并获取每个分组按照某个字段排序的前三条
  12. mybatis14 动态sql
  13. Java Bean 获取properties文件的读取
  14. PHP发送POST请求的三种方式
  15. pcduino v2安装opencv2.4.8
  16. c/c++ 重载运算符 ==和!=的重载
  17. Winform调用webapi
  18. SQL Access Advisor in Oracle Database 10g
  19. 使用JavaScript验证用户输入的是否为正整数
  20. BZOJ.2002.Bounce 弹飞绵羊(LCT)

热门文章

  1. Spring 中的 JDBCTemplate
  2. C++全排列函数next_permutation()和prev_permutation()
  3. 剑指offer-18-2. 删除链表中重复的结点
  4. 微软亚洲研究院开源图数据库GraphView
  5. 某某项目SDV软件测试报告范例
  6. Picaso完美兼容OkHttp3.3,缓存优化两不误 - Tamic Developer"s Blog
  7. 8——PHP循环结构&&条件结构
  8. Arthas 实战,助你解决同名类依赖冲突问题
  9. czC#01
  10. c/s用户与服务器之间的传输