npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

fie-toolkit-nuke

v0.10.3

Published

基于rax的nuke业务套件,适用于千牛、手淘等移动端weex页面开发

Downloads

63

Readme

fie-toolkit-nuke

说明

集成了 nuke、air 发布等常用 weex rax 开发工具。小巧灵活,功能丰富。手淘 weex、千牛 qap 一网打尽,居家旅行必备良品。

node 版本 >= 5.5

内部用户常见问题

帮助文档

三方用户常见问题

帮助文档

用法

初始化

fie init nuke

初始化后可根据业务渠道不同选择不同的项目初始化目录。如通用组件库:weex-nuke,千牛组件库:nuke。

场景

  • 场景:场景是单一页面,只与布局样式有关,一个项目可以在初始化或开发过程中选择多份,达到界面样式复用的目的。依据 nuke 与@ali/nuke 有区分。

  • 基础项目:基础项目包含 nuke 项目的接口请求与文件组织方式,以及数据流的管理方式。仅可以在初始化项目时选择一次。依据 nuke 与@ali/nuke 有区分。

支持两种引入场景的方式,一种是通过场景市场使用 fie add 不加任何参数开启。另一种是通过 fie add 场景名称。

fie add

可选择初始化的项目类型,目前支持千牛 qap项目,二方用户可根据场景选择最贴合当前业务的主题进行开发。

开启本地服务器

fie start

将会启动如下页面

构建

- fie build

> qap应用将被打成zip,用于上传离线包。并产生用于降级的html文件。具体降级配置请参考nuke或qap开发文档。

fie.config.js 配置

var cwd = process.cwd();
var path = require('path');
module.exports = {
  // 当前项目使用的fie套件
  toolkit: 'fie-toolkit-nuke',

  toolkitConfig: {
    // 本地服务器端口号,当前不可更改
    port: 8080,
    // 是否自动打开浏览器
    open: true,
    // 打开浏览器后 自动打开的 目标页面
    openTarget: 'demos/index.html',
    // 文件修改后是否自动刷新浏览器,仅H5调试可用。
    liveload: true,

    webpack: {
      sourcemap: 'cheap-module-inline-source-map', // 调试sourcemap类型,默认为inline-cheap-module-source-map。
      uglify: true, // 是否对生产环境的代码进行压缩混淆,默认为true。
      hotreload: true, // 是否进行热更新,默认为true
      'optimize-size': {
        nuke: false, // 是否开启对nuke的按需引用,默认为fasle
        webpack: true // 是否使用webpack3进行tree shaking,代码需满足export import的es6规范
      },
      externals: {
        nuke: true, // 是否使用内置到客户端的nuke组true
        rax: true, // 是否使用内置到客户端的rax组件,true
        'QAP-SDK': true // 是否使用内置到客户端的QAP-SDK件,true
      },
      alias: {
        $components: path.join(cwd, 'src/components'),
        $pages: path.join(cwd, 'src/pages'),
        $util: path.join(cwd, 'src/util'),
        $root: path.join(cwd, 'src/'),
        $data: path.join(cwd, 'data/')
      },
      report: true
    }
  }
};

高阶用法

对于需要对接服务端能力的前端发布,如 air。可以使用xtpl作为渲染模板,由服务端渲染数据或者在模板上进行高度自定义,可以通过制定设置 fie.config.js 中的toolkitConfig.pagemaster:true启用。

在启用后会在项目根目录生成pagemaster文件夹,开发者可根据需要修改pagemaster文件,决定如何渲染。参考air xtpl 支持,脚手架对部分方法进行了 mock。

一些约定

  • 为保证场景的复用性,入口规则必须满足src/pages/页面名称/index.js(x),出口则为扁平的build/页面名称.js
  • 调试服务默认会占用 8080、8088、3000 三个端口号
  • 可以指定页面的 host, 例如fie start --usehost=local.taobao.com. 可以配合 iHost(绑定 host 和 ip)一起使用.