node package manager

restackjs-cli

restackjs-cli

配置注入

配置存放的目录:{project}/config/${env}.js

使用方法:

import config from 'config'

Reducer导入

方法一:

import reducers from './reducers'

方法二:

let context = require.context("./reducers", true, /\.js$/)
let reducers = requireAllAsObject(context)

app = restack(config) app.routes(routes) app.reducers(reducers) app.run()

cli工具会根据当前的环境,选择对应的配置

Wanted features

  • webpack config merging

遗留问题

为什么项目里需要有webpack的依赖?

项目里需要的webpack依赖:

  • url-loader
  • file-loader
  • css-loader(?)
  • less-loader(?)

如无操作错误,项目里需要有上面两个依赖,理论上,在restack-cli已包含这些依赖,不需要在项目中依赖。

根据猜测,项目中不需要,但项目的依赖的模块需要。 例如restack-adminlte模块,项目引用restack-adminlte/assets/css/bootstrap.css, 而bootstrap.css又通过src: url(...)语法引用其他资源,例如字体,图片等,这时候webpack需要通过这些loader进行加载。 而这时候webpack只会在该模块内查找loader,而这些模块(例如restack-adminlte)又没有这些依赖,因此报错。

根据上述推测,解决方法是,提供css,less等资源的模块,自身需要通过webpack进行编译,将这些资源与css进行构建后,再上传到npm提供别人使用。