Open tenmue opened 8 years ago
-demo -js +a.js +b.js -views +a.jsp -b.jsp -fis-conf.js
fis.match('*.{css,js,less,png}',{ useHash: true }); fis.match('**',{ relative: true });
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <base href="<%=basePath%>"> <title>fis_demo</title> <script type="text/javascript" src="js/a.js"></script> <script type="text/javascript" src="js/b.js"></script> </head> <body> </body> </html>
a.jsp和b.jsp都加上了<base href="<%=basePath%>"> 运行FIS3后输出内容为: a.jsp没有加上MD5戳;b.jsp加上了MD5戳
<base href="<%=basePath%>">
因为b.jsp必须在web server中才能够定位到相关js文件,而a.jsp可以直接定位到,这也是两个文件的区别所在
FIS必须要求使用源代码路径来引用资源,不支持加上后端模板变量。关于这类讨论可以在fis和fis3的历史issue中查看。
FIS的功能可以完全覆盖这类后端模板变量的需求。
项目目录结构
fis-conf.js 内容如下
a.jsp和b.jsp内容(两个文件一致,只是目录不同)
疑问
a.jsp和b.jsp都加上了
<base href="<%=basePath%>">
运行FIS3后输出内容为: a.jsp没有加上MD5戳;b.jsp加上了MD5戳因为b.jsp必须在web server中才能够定位到相关js文件,而a.jsp可以直接定位到,这也是两个文件的区别所在