Thinkjs3新手入门之如何使用静态资源目录


Posted in Javascript onDecember 06, 2017

静态资源访问

项目开发时,一般都需要在模版里引用静态资源。

使用 thinkjs 命令创建项目时,会自动创建 www/static 目录,该目录下专门用来存放 JS、CSS、图片等静态资源。

0x0 听说new的项目自动就有www/static!?

传说默认创建的项目结构如下:

|--- development.js //开发环境下的入口文件
|--- nginx.conf //nginx 配置文件
|--- package.json
|--- pm2.json //pm2 配置文件
|--- production.js //生产环境下的入口文件
|--- README.md
|--- src
| |--- bootstrap //启动自动执行目录 
| | |--- master.js //Master 进程下自动执行
| | |--- worker.js //Worker 进程下自动执行
| |--- config //配置文件目录
| | |--- adapter.js // adapter 配置文件 
| | |--- config.js // 默认配置文件 
| | |--- config.production.js //生产环境下的默认配置文件,和 config.js 合并 
| | |--- extend.js //extend 配置文件 
| | |--- middleware.js //middleware 配置文件 
| | |--- router.js //自定义路由配置文件
| |--- controller //控制器目录 
| | |--- base.js
| | |--- index.js
| |--- service //服务目录 
| | |--- **.js //用户自己定义的服务
| |--- logic //logic 目录
| | |--- index.js
| |--- model //模型目录
| | |--- index.js
|--- view //模板目录
| |--- index_index.html
|--- www
| |--- static //静态资源目录
| | |--- css
| | |--- img
| | |--- js

其中是包含有www/static目录的,但现在通过thinkjs new出来的项目却没有这个目录,因此还需自行创建:

$ mkdir www && cd www
$ mkdir static

0x1 往其中添加文件

$ touch fuck.js && echo 'fuck 高数' > fuck.js

这里本人秉承一贯作风创建一个fuck.js文件,你也可按心情添加其他文件

然后启动项目并查看相应的页面 127.0.0.1:8360/fuck.js

如果一切正常的话,会出错!

Thinkjs3新手入门之如何使用静态资源目录

0x2 同学,请填写符合基本法的URL

正确的路径应该是 127.0.0.1:8360/static/fuck.js

Thinkjs3新手入门之如何使用静态资源目录

0x3 什么?你不喜欢static这个名字

那么可以通过修改src/config/middleware.js中resource的参数来修改:

修改前:

....
 {
 handle: 'resource',
 enable: isDev,
 options: {
 root: path.join(think.ROOT_PATH, 'www'),
 publicPath: /^\/(static|favicon\.ico)/ // <-- 此处将修改
 }
 },
....

修改后:

....
 {
 handle: 'resource',
 enable: isDev,
 options: {
 root: path.join(think.ROOT_PATH, 'www'),
 publicPath: /^\/(public|favicon\.ico)/ // <-- 此处修改了
 }
 },
....

还没完,对应的还得修改www/static为www/public:

修改前

|--- www
| |--- static //静态资源目录
| | |--- fuck.js

修改后

|--- www
| |--- public //静态资源目录
| | |--- fuck.js

大功告成,现在访问127.0.0.1:8360/public/fuck.js,就有了:

Thinkjs3新手入门之如何使用静态资源目录

0xSegmentFuck 感性认识

  • Thinkjs项目的目录结构在一定程度上对应着网站的URL(结合第一章)。
  • 官网不可尽信。
  • 调整src/config/middleware.js可以调整对项目中用到的中间件。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
Jan 23 Javascript
JS实现静止元素自动移动示例
Apr 14 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
Mar 20 Javascript
浅析Node.js的Stream模块中的Readable对象
Jul 29 Javascript
详解AngularJS 模态对话框
Apr 07 Javascript
微信小程序模板之分页滑动栏
Feb 10 Javascript
javascript实现数字配对游戏的实例讲解
Dec 14 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
Jan 02 jQuery
jQuery时间戳和日期相互转换操作示例
Dec 07 jQuery
详解webpack编译速度提升之DllPlugin
Feb 05 Javascript
JS使用百度地图API自动获取地址和经纬度操作示例
Apr 16 Javascript
layui type2 通过url给iframe子页面传值的例子
Sep 06 Javascript
浅谈JsonObject中的key-value数据解析排序问题
Dec 06 #Javascript
Thinkjs3新手入门之添加一个新的页面
Dec 06 #Javascript
vue 实现 ios 原生picker 效果及实现思路解析
Dec 06 #Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
Dec 06 #Javascript
基于Vue2的独立构建与运行时构建的差别(详解)
Dec 06 #Javascript
js 两数组去除重复数值的实例
Dec 06 #Javascript
js 提取某()特殊字符串长度的实例
Dec 06 #Javascript
You might like
PHP简单实现冒泡排序的方法
2016/12/26 PHP
PHP异步进程助手async-helper
2018/02/05 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
js运动框架_包括图片的淡入淡出效果
2013/05/11 Javascript
JQuery AJAX 中文乱码问题解决
2013/06/05 Javascript
javascript轻量级模板引擎juicer使用指南
2014/06/22 Javascript
学做Bootstrap的第一个页面
2016/05/15 HTML / CSS
AngularJS使用拦截器实现的loading功能完整实例
2017/05/17 Javascript
AjaxUpLoad.js实现文件上传功能
2018/03/02 Javascript
详解Vue 如何监听Array的变化
2019/06/06 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
python 文件和路径操作函数小结
2009/11/23 Python
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
Python实现从订阅源下载图片的方法
2015/03/11 Python
用Python制作简单的朴素基数估计器的教程
2015/04/01 Python
python实现的简单FTP上传下载文件实例
2015/06/30 Python
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
python的常用模块之collections模块详解
2018/12/06 Python
python实现整数的二进制循环移位
2019/03/08 Python
使用Python实现批量ping操作方法
2020/05/06 Python
python dict乱码如何解决
2020/06/07 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
Html5插件教程之添加浏览器放大镜效果的商品橱窗
2016/01/07 HTML / CSS
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
我们是伦敦女孩:WalG
2018/01/08 全球购物
欧缇丽加拿大官方网站:Caudalie加拿大
2019/07/18 全球购物
资产评估专业大学生求职信
2013/09/29 职场文书
大学旷课检讨书
2014/01/28 职场文书
《月球之谜》教学反思
2014/04/10 职场文书
幼儿教师师德演讲稿
2014/05/06 职场文书
篮球比赛策划方案
2014/06/05 职场文书
房屋鉴定委托书范本
2014/09/23 职场文书
普通党员个人剖析材料
2014/10/08 职场文书
初中班级口号霸气押韵
2015/12/24 职场文书
2019幼儿园感恩节活动策划书
2019/11/28 职场文书
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
2021/06/09 Python