Open Elaine87 opened 8 years ago
提供一下文件配置?
fis.require('jello')(fis);
/************* 定义 *************/
fis.set('namespace','bapp');
// fis.set('roadmap.domain', '');
fis.set('project.ignore',['fis-conf.js','output/**','node_modules/**','.git/**','**/package.json']);
/************* 配置 *************/
// 引入同名js/css
// 引入同名js/css,使用/widget/**,会导致js依赖中误导入less文件,暂不明原因
//
fis.match('*.vm', {
useSameNameRequire: true
});
// 加md5
fis.match('*.{js,css,less,scss,png,jpg,gif}', {
useHash: true
});
// fis.match('/static/js/**', {
// isMod: true
// })
/************* 编译阶段 *************/
// 编译less,并自动给 css 属性添加前缀
fis.match('*.less', {
parser: fis.plugin('less'),
rExt: '.css',
preprocessor: fis.plugin('autoprefixer', {
"browsers": ["Android >= 2.1", "iOS >= 6", "chrome >= 35" ,"firefox >= 30"],
"cascade": true
})
});
// 配置编译插件
fis.match('widget/**.vue', {
isMod: true,
rExt: 'js',
useSameNameRequire: true,
parser: fis.plugin('vue-component', {
cssScopeFlag: 'vuec'
})
})
fis.match('*.{js,jsx}',{
parser: fis.plugin('babel-5.x'),
isMod: true,
rExt: '.js'
})
fis.match('static/js/debuggap.js',{
isMod: false,
parser:null
})
// fis.match(/\.vue$/i, {
// rExt: '.js',
// isMod: true,
// parser: fis.plugin('vue')
// })
// 配置静态资源路径
fis.match(/^\/test\/(.*)$/i, {
isMod: false,
useHash: false,
release: '${statics}/${namespace}/test/$0',
url: '${statics}/${namespace}/test/$0'
});
/************* 打包阶段 *************/
// 启用 fis-spriter-csssprites 插件
fis.match('::package', {
spriter: fis.plugin('csssprites')
});
// 打包文件
// fis.match('**/zepto/{*,**/*}.js', {
// packTo: 'pkg/zepto.js'
// });
/************* 发布环境 *************/
// 线上环境配置
fis.media('prod').match('*.js', {
optimizer: fis.plugin('uglify-js')
}).match('*.{css,less}', {
optimizer: fis.plugin('clean-css')
}).match('*.png', {
optimizer: fis.plugin('png-compressor')
});
// deploy环境
fis.media('rd')
.match('*.{html,js,css,scss,less,png,jpg,gif,json}', {
deploy: fis.plugin('http-push', {
receiver: 'http://xxxxxxx:8999/receiver',
to: '/root/backend_service/tomcat/webapps/ROOT/'
})
}).match('*-map.json', {
release: '/static/fis-vm/config/$0',
deploy: fis.plugin('http-push', {
receiver: 'http://xxxxx:8999/receiver',
to: '/root/backend_service/tomcat/webapps/ROOT/'
})
}).match('*.vm', {
release: '/static/fis-vm/views/${namespace}/$0',
deploy: fis.plugin('http-push', {
receiver: 'http://xxxx:8999/receiver',
to: '/root/backend_service/tomcat/webapps/ROOT/'
})
});
fis.media('rd')这里面我没看到有配置vue文件的部署啊
fis.match('widget/**.vue', { isMod: true, rExt: 'js', useSameNameRequire: true, parser: fis.plugin('vue-component', { cssScopeFlag: 'vuec' }) })
这里已经把vue文件编译为了js文件,发布的时候不应该是发布js文件吗? 其中一台虚拟机有这种问题,我发布到自己的虚拟机上就没有这个问题 这有可能是编译---发布时序问题造成的吗?
release的时候也match vue文件看看
release 的时候watch vue文件可以的。这会是什么原因造成的呢?因为之前一直是OK的,突然就不能release这个vue文件了
因为默认就会watch所有文件,但是你的deploy配置并没有vue文件。
fis3 release 到远端机,project.ignore没有设置忽略widget/component/*.vue,但是发布的时候这个文件夹被莫名的忽略了,只有发布到远端机的时候有这种问题,发布到本地是没有问题的。这可能是什么原因造成的?怎么处理?