简单说就是在团队内用时间替代货币做一般等价物的实行情况,结果看起来很美好,其实就有点生产合作社的性质了。 Github,贴一下 readme 吧:
Bluebook 是一款开源自由的协作管理工具,采用 Node.js 开发。
数据表设计精简,内部核心 7 张表,外部核心 4 张表,代码优美简洁,易拆分,扩展性强。
对内采用计划经济,投票决定事项,按需分配。
对外保留市场经济的接口,允许生产团队对外倾销和购买生产资料。
基本操作流程是:
关于投票,团队可以设置任务自动通过的百分比值,默认是 50%。
团队管理员具有一票否决权,保证了任务的科学性,然后同时也加入了排除管理员重新表决,达到 90%(也可以设置)则继续进行的民主机制(称为反否阈值)。
目前项目还在初始阶段,只有基础框架,但已经可以轻松愉悦地搬砖了。
关于数据表的信息,可以在这里查看,有完善的注释。
目前 ui 还不完善,但已经实现了基本可看的响应式设计,从宽屏到手机列丝滑切换,从 5 列到两列都有合适的显示和操作逻辑。
可以下载模板单页以进行操作预览:首页 / 登录页,图片预览和详细流程在这里可以查阅。
然后时隔多年,还是只会基础语法,所以也遇到了一个大问题,运行 app.js 出现:
Server running at http://localhost:8888
/home/xxx/文档 /temp/t2/20211210_bluebook/app.js:24
let app_login_obj = new app_login;
^
TypeError: app_login is not a constructor
at Object.app.get [as /] (/home/xxx/文档 /temp/t2/20211210_bluebook/app.js:24:25)
at Server.app (/home/xxx/文档 /temp/t2/20211210_bluebook/control/app_router.js:13:39)
at Server.emit (events.js:198:13)
at parserOnIncoming (_http_server.js:691:12)
at HTTPParser.parserOnHeadersComplete (_http_common.js:111:17)
大概是因为对闭包的不理解,但查了一下午还是无果,所以也顺便问一下了。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.