fex-team / fis Goto Github PK
View Code? Open in Web Editor NEWFront-end Integrated Solution - 前端集成解决方案, 最新版请进入 FIS3 https://github.com/fex-team/fis3
Home Page: http://fis.baidu.com
License: MIT License
Front-end Integrated Solution - 前端集成解决方案, 最新版请进入 FIS3 https://github.com/fex-team/fis3
Home Page: http://fis.baidu.com
License: MIT License
@fouber
如题,虽然可以事后将map.json beatify,但无疑增加了工作量,是否有什么方法可以避免压缩这个文件?
在fis-site项目下执行:
fis server start -p 7777
checking java support : v1.7.0
checking php-cgi support : v5.2.17
starting fis-server .... fail
2013-10-17 10:23:17.468:INFO:oejs.Server:jetty-8.y.z-SNAPSHOT
php.java.bridge.http.FCGIConnectException: Could not connect to server
[ERROR] fis-server fails to start at port [7777], error: Could not connect to se
rver
请问这是怎么回事?
我希望能自定义静态文件后缀规则
编译的时候产生 xxx.js?v=datetime 形式的url
请问F.I.S怎么去实现呢
Thanks :)
在html中的script中
seajs.use('app')
请问,像这种情况,如何在调用时添加md5后缀?
安装出现问题,命令是 npm install fis,日志如下
info it worked if it ends with ok
verbose cli [ 'node', '/usr/bin/npm', 'install', 'fis' ]
info using [email protected]
info using [email protected]
verbose config file /root/.npmrc
verbose config file /usr/etc/npmrc
verbose config file /usr/share/npm/npmrc
verbose cache add [ 'fis', null ]
silly cache add: name, spec, args [ undefined, 'fis', [ 'fis', null ] ]
verbose parsed url { pathname: 'fis', path: 'fis', href: 'fis' }
verbose addNamed [ 'fis', '' ]
verbose addNamed [ null, '' ]
silly name, range, hasData [ 'fis', '', false ]
verbose raw, before any munging fis
verbose url resolving [ 'https://registry.npmjs.org/', './fis' ]
verbose url resolved https://registry.npmjs.org/fis
http GET https://registry.npmjs.org/fis
ERR! Error: failed to fetch from registry: fis
ERR! at /usr/share/npm/lib/utils/npm-registry-client/get.js:139:12
ERR! at cb (/usr/share/npm/lib/utils/npm-registry-client/request.js:31:9)
ERR! at Request._callback (/usr/share/npm/lib/utils/npm-registry-client/request.js:136:18)
ERR! at Request.callback (/usr/lib/nodejs/request/main.js:119:22)
ERR! at Request. (/usr/lib/nodejs/request/main.js:212:58)
ERR! at Request.emit (events.js:88:20)
ERR! at ClientRequest. (/usr/lib/nodejs/request/main.js:412:12)
ERR! at ClientRequest.emit (events.js:67:17)
ERR! at HTTPParser.onIncoming (http.js:1261:11)
ERR! at HTTPParser.onHeadersComplete (http.js:102:31)
ERR! You may report this log at:
ERR! http://bugs.debian.org/npm
ERR! or use
ERR! reportbug --attach /root/npm-debug.log npm
ERR!
ERR! System Linux 3.2.0-29-generic
ERR! command "node" "/usr/bin/npm" "install" "fis"
ERR! cwd /root
ERR! node -v v0.6.12
ERR! npm -v 1.1.4
ERR! message failed to fetch from registry: fis
verbose exit [ 1, true ]
不熟悉nodejs,麻烦大牛看看这个问题怎么解决,谢过了。
如题?
a.less如下:
@import (inline) "b.less";
当b.less修改时,--watch只能监测到b.less发生变动,会更新b.css,但不会更新a.css
请问这有什么办法处理吗?
你好,我在fis-conf.js中配置
project: {
include : 'src/**'
}
我的fis-conf.js文件和src/位于同一个目录,假设这个目录还有a文件,及a、fis-conf.js、src/位于同一个目录
release后,产出的目录里依然有a文件,为什么呢,不是应该只编译src/里的文件吗?
试了一下,貌似不支持requirejs?为什么不去识别define而是require?
如何对CSS中的@import进行合并?不推荐这么做是么,而是使用map.json打包
提示
error: unknown option `--no-rewrite'
可是运行php-cgi -v显示已经安装成功了
PHP 5.2.3 (cgi-fcgi) (built: May 31 2007 09:37:20)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
fis的官方wiki写不是太容易理解呀
如果使用replace功能替换字符串
例如需要将:a1,b2,c3
替换为:hh,ii,jj
请问应该如何配置?
fis对开发文件a.png打包后为什么是a_{md5value}.png
而不是针对引用之处添加时间戳的方式: a.png?md5={md5value}呢?
特来请教一下大大.
以上
map.json中只包含js和css的映射,在模板引擎中无法通过程序加载到除js和css以外的资源。是不是可以考虑将其它资源的映射情况也添加上去?
我有如下样式:
@font-face {
font-family: 'icomoon';
src:url('fonts/icomoon.eot');
src:url('fonts/icomoon.eot?#iefix') format('embedded-opentype'),
url('fonts/icomoon.woff') format('woff'),
url('fonts/icomoon.ttf') format('truetype'),
url('fonts/icomoon.svg#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
经过fis处理以后,得出的格式有问题。不知是我缺少了配置抑或是bug?
(domain配置:http://somedomain.com )
@font-face {
font-family: 'icomoon';
src:url('/css/fonts/icomoon.eot');
src:url('/css/fonts/icomoon.eot?#iefix') format('embedded-opentype'),
url('http://somedomain.com/css/fonts/icomoon.woff') format('woff'),
url('/css/fonts/icomoon.ttf') format('truetype'),
url('http://somedomain.com/css/fonts/icomoon.svg#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
打算在项目中用fis,希望能提供java、jsp的例子。
如下情况
当 gif 更新为 gif2 gifmd5变化
css 文件 url(gif) 需要更新 cssmd5变化
然后 html link href也需要更新
这条简单的流程线 在资源错综复杂的变化时
如何保证md5的最终准确性?
说的挺糊涂的,因为我想了很久没弄通
越来越迷惑了
特来请教,多谢!
replace : {
from : 'http://www.online.com',
to : 'http://www.offline.com'
}
请问如何对多组字符串进行替换?
新项目后台使用 .net,因为本身对于 .net 作为后台的机制以及整个的编译流程和影响 也不是很了解,听说 这种情况下不适合或者不能用 fis,
大家伙能大概介绍一下吗?或者有没有什么变通的方案?
fis release --optimize --md5 --pack --watch --live
添加 --live命令了,如上命令,能够检测到文件变化, 但浏览器不能自动刷新,难道我理解错wiki上面的意思?
代码执行了一部分。
Ω ................................
剩余还有很多文件没有构建的时候出现
[ERROR] Bad argument
没有其他任何错误信息,同样的代码本地(我自己的mac比没有问题)。
上面的错误是我把代码更新到服务器开始构建的时候出现的。
已经确认 线上node 版本为 10.20(最新)。
部分错误代码:npm install -g fis-parser-marked
npm http GET https://registry.npmjs.org/fis-parser-marked
npm http 304 https://registry.npmjs.org/fis-parser-marked
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/fis-parser-marked'
npm ERR! { [Error: EACCES, mkdir '/usr/local/lib/node_modules/fis-parser-marked']
npm ERR! errno: 3,
npm ERR! code: 'EACCES',
npm ERR! path: '/usr/local/lib/node_modules/fis-parser-marked',
npm ERR! fstream_type: 'Directory',
npm ERR! fstream_path: '/usr/local/lib/node_modules/fis-parser-marked',
npm ERR! fstream_class: 'DirWriter',
npm ERR! fstream_stack:
npm ERR! [ '/usr/local/lib/node_modules/np
chown -R ${USER} /usr/local 设置安装目录权限 刚这个是这样设置 ,我现在还是不行
< img src="cover_preview.png" data-src="cover_original.png" / >
fis release 后,只有src的图片路径进行了相对应的处理
请问,如果同时对 data-src 中的图片路径也进行处理呢?
THX
例如:background:url(../images/line-1.png ) repeat-x left top;
看到 line-1.png 与 ) 直接存在空格,导致release无法正确处理这一条规则(domains/md5参数都无效了),希望能修复一下。
https://npmjs.org/package/ejs-shrink 像这个,希望fis能有这样的插件来压缩模版,希望尽快支持,谢谢!
64位win7
node:0.10.24
npm:1.3.21
code:ebusy
fis release 之后得目录在哪里啊
使用server命令,默认断口是8080,本地使用nginx,已经占了80端口,还有阿帕奇,占用的8081端口
fis默认使用的是80端口,这里就报错了。
excitement
当然这两个做的事情不同了。
想来现在开发项目时使用requirejs或seajs这样,配合构建工具等方法应该是挺多的了;
但是fis涉及到的文件更多,前后端的文件都要去配合,要说服大家在项目中使用fis,就需要更详细的信息了~
目前因为时间不太多,还没有太深入的了解fis,所以想请各位开发者能不能详细的介绍一下使用fis跟seajs的对比。(当然着重说fis了~)
哪些是seajs做不到的,而fis能做的更好的。
从功能,所做的事情,到在项目中使用的话,需要那些文件配合(比如模板,大多数都是后台程序的模板,大的项目可能前端不太方便直接做过多修改),对开发方式的影响。
比如项目本来是直接输出一段html,现在要替换成<?php load_widget()?>
类似这样,成本也是很大的。
还没太想清楚,大概就是想了解这两种开发方式在各个方面的异同吧。
--md5 的默认连接符 "_" 是否可以配置?
a_xxxxx.css
-->
a.xxxxx.css
打包配置中有两个目标项package_a.css和package_b.css,这两项需要打包同一个文件demo.css。输出的结果中只有一项包含demo.css的内容。这样的做法是基于什么样的考虑。
配置如下:
pack: {
'package_a.css': ['demo.css', 'style.css'],
'package_b.css': ['animation.css', 'demo.css']
}
结果如下:
"p0": {
"uri": "/static/css/package_a_bfeef4d.css",
"type": "css",
"has": [
"demo.css",
"style.css"
]
},
"p1": {
"uri": "/static/css/package_b_683e8a8.css",
"type": "css",
"has": [
"animation.css"
]
}
移动开发中使用的em做为布局变量
.ico1{
background: url($imgurl+"/x_01.png?__inline") no-repeat;
background-size: (100em/20) (100em/20);
}
在csssprites中使用的是px作为单位,这有办法解决吗?
在?__sprites 后面加参数控制?
@xiangshouding
刚刚看到这东西觉得不错但是很自然地联想到 Application Cache. 比如有些 JS 文件使用的是线上的, 有些是线下的, 这个在打包的时候是否会做区分? 或者最好就集成个 Manifest 输出功能什么的.
我想把多个网页中相同的部分作为模版,看到wiki中有如下的做法:
但是demo.html引用进来不会替换里面资源的链接,求解!
如题,按照文档执行fis server start --no-rewrite会提示错误,并且执行fis server显示的指令列表里没有--no-rewrite
第一次玩fis。遇到点问题
单独压缩css文件时,会把"url(../../images/default/test.png)" 变成 "url(undefined)" ,或者变成 "url(/images/default/test.png)"
启动fis的调试服务器(注意添加 --no-rewrite 参数),如果报错 没有php-cgi环境,请 安装 它,并把php-cgi命令加到系统的环境变量中:
fis server start
checking java support : v1.6.0
checking php-cgi support : unsupported php-cgi environment
[NOTIC] launching java server.
starting fis-server ... at port [8080]
[NOTIC] browse http://127.0.0.1:8080/
浏览时直接输出php代码了。。。
setTemplateDir($root . '/template'); $smarty->setConfigDir($root . '/config'); $smarty->addPluginsDir($root . '/plugin'); $smarty->setLeftDelimiter('{%'); $smarty->setRightDelimiter('%}'); $smarty->assign(include($root . '/data/index.php')); $smarty->display('page/index.tpl'); ?>
但是在终端可以运行php:
==>php
song==>php -v
PHP 5.3.5-1ubuntu7.11 with Suhosin-Patch (cli) (built: Sep 12 2012 18:47:04)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
请问我该如何设置php-cgi?
如果在公司设置的代理的情况下怎样配置代理文件,fis install 安装相应的插件
现在本地server启动时会有默认参数及--no-rewrite的方式,在默认参数下,所有请求都被打到了/index.php这个文件上。请问我改如何配置rewrite规则,比如指定静态文件的目录,并根据url对应去渲染相应方法?在提供的两个demo中都不涉及多url模板渲染的例子,这里能否提供说明下呢?多谢。
unable to embed non-existent file. ?__inline
你好,我想把less和css生成到同一个文件夹下面如何做到,谢谢
插件地址:http://plugins.jquery.com/simple-dtpicker/
版本:1.7.0
编译后不能使用,chrome浏览器报:Uncaught SyntaxError: Unexpected identifier
--root
--public
--css
a.css
--view
view.html ->link href="css/a.css"
index.html ->link href="css/a.css"
上面这个目录是在 express + ejs 的目录结构。
现在有个问题,因为在view.html 没有写全 /public/css/a.css。 所以没有被 替换编译以后的CSS文件。
如果我不想修改 view.html的引入CSS方式,有没有办法通过配置让他识别出来。
源代码:
@font-face {
font-family: 'Glyphicons Halflings';
src: url('../fonts/glyphicons-halflings-regular.eot');
src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
}
使用以下命令编译后:fis release --optimize --md5 --pack --dest ../asset
后字体的依赖关系发生改变,其怪的是最后一个节点的url却没有改变:
@font-face {
font-family: 'Glyphicons Halflings';
src: url('/fonts/glyphicons-halflings-regular.eot');
src: url('/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('/fonts/glyphicons-halflings-regular.woff') format('woff'), url('/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg');
}
我的配置文件roadmap节点:
roadmap : {
path : [
{
//map.json文件
reg : 'map.json',
//发布到/../map.json
release : '../map.json'
},
{
//fonts目录下文件不添加md5戳
reg:'fonts/.',
useHash:false
},
{
//asset 文件不编译
reg:'asset/**',
useCompile:false,
release:false
}
]
},
编译打包时出现错误
fis release --optimize --md5 --pack --dest ../output
[ERROR] [roadmap.path.1] missing property [reg].
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.