首页 > 其他 > 详细

FIS3学习(二)实战

时间:2021-07-13 20:21:26      阅读:20      评论:0      收藏:0      [点我收藏+]

解读

fis.match(selector,props)

  • selector :FIS3 把匹配文件路径的路径作为selector,匹配到的文件会分配给它设置的 props。关于 selector 语法,请参看 Glob 说明

  • props :编译规则属性,包括文件属性和插件属性,更多属性

deploy

  • 解释:设置项目发布方式

  • 值类型:Array | fis.plugin | function

  • 默认值:fis.plugin(‘local-deliver‘)

  • 说明:编译打包后,新增发布阶段,这个阶段主要决定了资源的发布方式,而这些方式都是以插件的方式提供的。比如你想一键部署到远端或者是把文件打包到 Tar/Zip 又或者是直接进行 Git 提交,都可以通过设置此属性,调用相应的插件就能搞定了。

  • 用法:

    假设项目开发完后,想部署到其他机器上,我们选择 http 提交数据的方式部署

fis.match(**, {
      deploy: fis.plugin(http-push, {
          receiver: http://target-host/receiver.php, // 接收端
          to: /home/work/www // 将部署到服务器的这个目录下
      })
  })

fis.media()

fis.media() 接口提供多种状态功能,比如有些配置是仅供开发环境下使用,有些则是仅供生产环境使用的。

fis.match(*, {
  useHash: false
});

fis.media(prod).match(*.js, {
  optimizer: fis.plugin(uglify-js)
});
fis3 release <media>
  • <media> 配置的 media 值

命令行执行:fis3 release prod

编译时使用 prod 指定的编译配置,即对 js 进行压缩。

如上,fis.media() 可以使配置文件变为多份(多个状态,一个状态一份配置)。

fis.media(rd).match(*, {
  deploy: fis.plugin(http-push, {
    receiver: http://remote-rd-host/receiver.php
  })
});

fis.media(qa).match(*, {
  deploy: fis.plugin(http-push, {
    receiver: http://remote-qa-host/receiver.php
  })
});
  • fis3 release rd push 到 RD 的远端机器上
  • fis3 release qa push 到 QA 的远端机器上

media dev 已经被占用,默认情况下不加 <media> 参数时默认为 dev

 

FIS3学习(二)实战

原文:https://www.cnblogs.com/kunmomo/p/15007869.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!