Git Product home page Git Product logo

ferry_web's Introduction

license donate

基于Gin + Vue + Element UI前后端分离的工单系统

流程中心

通过灵活的配置流程、模版等数据,非常快速方便的生成工单流程,通过对流程进行任务绑定,实现流程中的钩子操作,目前支持绑定邮件来通知处理,当然为兼容更多的通知方式,也可以自己写任务脚本来进行任务通知,可根据自己的需求定制。

兼容了多种处理情况,包括串行处理、并行处理以及根据条件判断进行节点跳转。

可通过变量设置处理人,例如:直接负责人、部门负责人、HRBP等变量数据。

系统管理

基于casbin的RBAC权限控制,借鉴了go-admin项目的前端权限管理,可以在页面对API、菜单、页面按钮等操作,进行灵活且简单的配置。

演示demo: http://fdevops.com:8001/#/dashboard

账号:admin
密码:123456

演示demo登陆需要取消ldap验证,就是登陆页面取消ldap的打勾。

文档: https://www.fdevops.com/docs/ferry

视频教程(由群内好友<稳定>提供,非常感谢。):

官网:http://ferry.fdevops.com

需注意,因有人恶意删除演示数据,将可删除的数据全都删除了,因此演示的Demo上已经将删除操作的隐藏了。

但是直接在Github或者Gitee下载下来的代码是完整的,请放心。

如果总是出现此类删除数据,关闭演示用户的情况的话,可能考虑不在维护demo,仅放置一些项目截图。

请大家一起监督。

功能介绍

下面对本系统的功能做一个简单介绍。

工单系统相关功能:

  • 工单提交申请
  • 工单统计
  • 多维度工单列表,包括(我创建的、我相关的、我待办的、所有工单)
  • 自定义流程
  • 自定义模版
  • 任务钩子
  • 任务管理
  • 催办
  • 转交
  • 手动结单
  • 加签
  • 多维度处理人,包括(个人,变量(创建者、创建者负责人))
  • 排他网关,即根据条件判断进行工单跳转
  • 并行网关,即多个节点同时进行审批处理
  • 通知提醒(目前仅支持邮件)
  • 流程分类管理

权限管理相关功能,使用casbin实现接口权限控制:

  • 用户、角色、岗位的增删查改,批量删除,多条件搜索
  • 角色、岗位数据导出Excel
  • 重置用户密码
  • 维护个人信息,上传管理头像,修改当前账户密码
  • 部门的增删查改
  • 菜单目录、跳转、按钮及API接口的增删查改
  • 登陆日志管理
  • 左菜单权限控制
  • 页面按钮权限控制
  • API接口权限控制

快速安装部署:

bash build.sh install

启动服务:

bash build.sh start

交流

加群条件是需给项目一个star,不需要您费多大的功夫与力气,一个小小的star是作者能维护下去的动力。

如果您只是使用本项目的话,您可以在群内提出您使用中需要改进的地方,我会尽快修改。

如果您是想基于此项目二次开发的话,您可以在群里提出您在开发过程中的任何疑问,我会尽快答复并讲解。

群里只要不说骂人、侮辱人之类人身攻击的话,您就可以畅所欲言,有bug我及时修改,使用中有不懂的,我会及时回复,感谢。

QQ群 4:361011819

兰玉磊的技术博客

###个人微信,添加好友请描述地区、公司及名字,例如:北京-国美-xxx。

微信号:lanyulei666

特别感谢

go-amdin # 不错的后台开发框架

vue-element-admin # 不错的前端模版框架

vue-form-making # 表单设计器,开源版本比较简单,如果有能力的话可以自己进行二次开发

wfd-vue # 流程设计器

machinery # 任务队列

等等...

打赏

如果您觉得这个项目帮助到了您,您可以请作者喝一杯咖啡表示鼓励:

打赏名人榜

鸣谢

特别感谢 JetBrains 为本开源项目提供免费的 IntelliJ GoLand 授权

License

开源不易,请尊重作者的付出,感谢。

在此处声明,本系统目前不建议商业产品使用,因本系统使用的流程设计器未设置开源协议,表单设计器是LGPL v3的协议。

因此避免纠纷,不建议商业产品使用,若执意使用,请联系原作者获得授权。

再次声明,若是未联系作者直接将本系统使用于商业产品,出现的商业纠纷,本系统概不承担,感谢。

LGPL-3.0

Copyright (c) 2021 lanyulei

ferry_web's People

Contributors

kagurazakanyaa avatar lanyulei avatar xiaolei-shuai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ferry_web's Issues

Dockerfile 里面使用了 cnpm 导致拉取不到某个依赖

Step 4/12 : RUN npm install -g cnpm --registry=https://registry.npm.taobao.org && cnpm install
 ---> Running in 070ed139cdc2
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated [email protected]: this library is no longer supported
/usr/local/bin/cnpm -> /usr/local/lib/node_modules/cnpm/bin/cnpm
+ [email protected]
added 709 packages from 969 contributors in 22.224s
...
...
[[email protected][email protected][email protected] › eve@git://github.com/adobe-webplatform/eve.git#eef80ed] install eve from git eve@git://github.com/adobe-webplatform/eve.git#eef80ed, may be very slow, please keep patience
platform unsupported @vue/[email protected][email protected][email protected][email protected] › fsevents@~2.3.2 Package require os(darwin) not compatible with your platform(linux)
[fsevents@~2.3.2] optional install error: Package require os(darwin) not compatible with your platform(linux)
Removing intermediate container 070ed139cdc2
 ---> c9f9772b3416
Step 5/12 : RUN npm run build:prod
 ---> Running in 0b023ce0d3e3

> [email protected] build:prod /opt/ferry_web
> vue-cli-service build

 ERROR  Error loading vue.config.js:
 ERROR  Error: Cannot find module 'monaco-editor-webpack-plugin'
Require stack:
- /opt/ferry_web/vue.config.js
- /opt/ferry_web/node_modules/_@[email protected]@@vue/cli-service/lib/Service.js
- /opt/ferry_web/node_modules/_@[email protected]@@vue/cli-service/bin/vue-cli-service.js
Error: Cannot find module 'monaco-editor-webpack-plugin'

改成

RUN npm install --registry=https://registry.npm.taobao.org
RUN npm run build:prod

反而就可以了

npm install error

Some lib was deprecated or not recommended.
Such as: "tui-editor": "1.3.3", it's very difficult to install. @toast-ui/vue-editor seems to be a substitute.
Besides, node-sass was not recommended.

npm install报错

npm ERR! code 128
npm ERR! Command failed: git clone --mirror -q git://github.com/adobe-webplatform/eve.git E:\program\nodejs\node_cache_cacache\tmp\git-clone-23dcce25.git --config core.longpaths=true
npm ERR! warning: templates not found in C:\Users\user\AppData\Local\Temp\pacote-git-template-tmp\git-clone-deeea630
npm ERR! fatal: read error: Invalid argument

npm install error

  • it seems that python error.
  • here is log of error.
Building: D:\environment\nodejs\node.exe D:\mypro\angular\test-app\node_modules\node-gyp\bin\node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags=
--libsass_library=
gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli   'D:\\environment\\nodejs\\node.exe',
gyp verb cli   'D:\\mypro\\angular\\test-app\\node_modules\\node-gyp\\bin\\node-gyp.js',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose',
gyp verb cli   '--libsass_ext=',
gyp verb cli   '--libsass_cflags=',
gyp verb cli   '--libsass_ldflags=',
gyp verb cli   '--libsass_library='
gyp verb cli ]
gyp info using [email protected]
gyp info using [email protected] | win32 | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb check python checking for Python executable "python2" in the PATH
gyp verb `which` failed Error: not found: python2
gyp verb `which` failed     at getNotFoundError (D:\mypro\angular\test-app\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (D:\mypro\angular\test-app\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (D:\mypro\angular\test-app\node_modules\which\which.js:80:29)
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\which\which.js:89:16
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:183:21)
gyp verb `which` failed  python2 Error: not found: python2
gyp verb `which` failed     at getNotFoundError (D:\mypro\angular\test-app\node_modules\which\which.js:13:12)
gyp verb `which` failed     at F (D:\mypro\angular\test-app\node_modules\which\which.js:68:19)
gyp verb `which` failed     at E (D:\mypro\angular\test-app\node_modules\which\which.js:80:29)
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\which\which.js:89:16
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\isexe\index.js:42:5
gyp verb `which` failed     at D:\mypro\angular\test-app\node_modules\isexe\windows.js:36:5
gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:183:21) {
gyp verb `which` failed   code: 'ENOENT'
gyp verb `which` failed }
gyp verb check python checking for Python executable "python" in the PATH
gyp verb `which` succeeded python D:\environment\python3.6\python.EXE
gyp ERR! configure error
gyp ERR! stack Error: Command failed: D:\environment\python3.6\python.EXE -c import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack   File "<string>", line 1
gyp ERR! stack     import sys; print "%s.%s.%s" % sys.version_info[:3];
gyp ERR! stack                                ^
gyp ERR! stack SyntaxError: invalid syntax
gyp ERR! stack
gyp ERR! stack     at ChildProcess.exithandler (child_process.js:308:12)
gyp ERR! stack     at ChildProcess.emit (events.js:315:20)
gyp ERR! stack     at maybeClose (internal/child_process.js:1048:16)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
gyp ERR! System Windows_NT 10.0.19041
gyp ERR! command "D:\\environment\\nodejs\\node.exe" "D:\\mypro\\angular\\test-app\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass
_cflags=" "--libsass_ldflags=" "--libsass_library="
gyp ERR! cwd D:\mypro\angular\test-app\node_modules\node-sass
gyp ERR! node -v v14.15.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
Build failed with error code: 1
npm WARN [email protected] requires a peer of ajv@^6.9.1 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\watchpack\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\node-sass):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] postinstall: `node scripts/build.js`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

up to date in 68.168s

30 packages are looking for funding
  run `npm fund` for details

npm run build:prod 失败

Node: v14.18.1
NPM: 6.14.15
版本:
commit 9898a49 (HEAD -> master, origin/master, origin/HEAD)
Author: lanyulei [email protected]
Date: Thu Sep 16 22:34:04 2021 +0800

feat: 工单筛选支持申请人。

输出如下:

[root@localhost ~/ferry_web]# npm run build:prod

> [email protected] build:prod /root/ferry_web
> vue-cli-service build


⠸  Building for production...DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div(1, 5)

More info and automated migrator: https://sass-lang.com/d/slash-div

    ╷
489 │ $--group-option-flex: 0 0 (1/5) * 100% !default;
    │                            ^^^
    ╵
    node_modules/element-ui/packages/theme-chalk/src/common/var.scss 489:28      @import
    node_modules/element-ui/packages/theme-chalk/src/common/transition.scss 1:9  @import
    node_modules/element-ui/packages/theme-chalk/src/base.scss 1:9               @import
    node_modules/element-ui/packages/theme-chalk/src/index.scss 1:9              @import
    stdin 25:9                                                                   root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($--tooltip-arrow-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

   ╷
32 │     margin-right: #{$--tooltip-arrow-size / 2};
   │                     ^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 32:21         @content
    node_modules/element-ui/packages/theme-chalk/src/mixins/mixins.scss 74:5   b()
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 4:1           @import
    node_modules/element-ui/packages/theme-chalk/src/select-dropdown.scss 3:9  @import
    node_modules/element-ui/packages/theme-chalk/src/select.scss 4:9           @import
    node_modules/element-ui/packages/theme-chalk/src/pagination.scss 4:9       @import
    node_modules/element-ui/packages/theme-chalk/src/index.scss 2:9            @import
    stdin 25:9                                                                 root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($--tooltip-arrow-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

   ╷
51 │     margin-right: #{$--tooltip-arrow-size / 2};
   │                     ^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 51:21         @content
    node_modules/element-ui/packages/theme-chalk/src/mixins/mixins.scss 74:5   b()
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 4:1           @import
    node_modules/element-ui/packages/theme-chalk/src/select-dropdown.scss 3:9  @import
    node_modules/element-ui/packages/theme-chalk/src/select.scss 4:9           @import
    node_modules/element-ui/packages/theme-chalk/src/pagination.scss 4:9       @import
    node_modules/element-ui/packages/theme-chalk/src/index.scss 2:9            @import
    stdin 25:9                                                                 root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($--tooltip-arrow-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

   ╷
70 │     margin-bottom: #{$--tooltip-arrow-size / 2};
   │                      ^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 70:22         @content
    node_modules/element-ui/packages/theme-chalk/src/mixins/mixins.scss 74:5   b()
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 4:1           @import
    node_modules/element-ui/packages/theme-chalk/src/select-dropdown.scss 3:9  @import
    node_modules/element-ui/packages/theme-chalk/src/select.scss 4:9           @import
    node_modules/element-ui/packages/theme-chalk/src/pagination.scss 4:9       @import
    node_modules/element-ui/packages/theme-chalk/src/index.scss 2:9            @import
    stdin 25:9                                                                 root stylesheet

DEPRECATION WARNING: Using / for division is deprecated and will be removed in Dart Sass 2.0.0.

Recommendation: math.div($--tooltip-arrow-size, 2)

More info and automated migrator: https://sass-lang.com/d/slash-div

   ╷
89 │     margin-bottom: #{$--tooltip-arrow-size / 2};
   │                      ^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 89:22         @content
    node_modules/element-ui/packages/theme-chalk/src/mixins/mixins.scss 74:5   b()
    node_modules/element-ui/packages/theme-chalk/src/popper.scss 4:1           @import
    node_modules/element-ui/packages/theme-chalk/src/select-dropdown.scss 3:9  @import
    node_modules/element-ui/packages/theme-chalk/src/select.scss 4:9           @import
    node_modules/element-ui/packages/theme-chalk/src/pagination.scss 4:9       @import
    node_modules/element-ui/packages/theme-chalk/src/index.scss 2:9            @import
    stdin 25:9                                                                 root stylesheet

WARNING: 33 repetitive deprecation warnings omitted.

⠙  Building for production...

 ERROR  Failed to compile with 4 errors                                                                                                                                     3:21:40 PM
 error  in ./src/components/HeaderSearch/index.vue?vue&type=style&index=0&id=60e4cb60&lang=scss&scoped=true&


    /deep/ .el-input__inner {
   ^
      Expected selector.
    ╷
162 │     /deep/ .el-input__inner{
    │     ^
    ╵
  stdin 162:5  root stylesheet
      in /root/ferry_web/src/components/HeaderSearch/index.vue (line 162, column 5)


 @ ./src/components/HeaderSearch/index.vue?vue&type=style&index=0&id=60e4cb60&lang=scss&scoped=true& 1:0-545 1:0-545
 @ ./src/components/HeaderSearch/index.vue
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/layout/components/Navbar.vue?vue&type=script&lang=js&
 @ ./src/layout/components/Navbar.vue?vue&type=script&lang=js&
 @ ./src/layout/components/Navbar.vue
 @ ./src/layout/components/index.js
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/layout/index.vue?vue&type=script&lang=js&
 @ ./src/layout/index.vue?vue&type=script&lang=js&
 @ ./src/layout/index.vue
 @ ./src/router/index.js
 @ ./src/main.js
 @ multi ./src/main.js

 error  in ./src/views/login/index.vue?vue&type=style&index=0&id=0cd9d417&lang=scss&scoped=true&


  /deep/ .el-input {
 ^
      Expected selector.
    ╷
377 │   /deep/ .el-input{
    │   ^
    ╵
  stdin 377:3  root stylesheet
      in /root/ferry_web/src/views/login/index.vue (line 377, column 3)


 @ ./src/views/login/index.vue?vue&type=style&index=0&id=0cd9d417&lang=scss&scoped=true& 1:0-545 1:0-545
 @ ./src/views/login/index.vue
 @ ./src/router/index.js
 @ ./src/main.js
 @ multi ./src/main.js

 error  in ./src/layout/components/TagsView/ScrollPane.vue?vue&type=style&index=0&id=2dda9ac4&lang=scss&scoped=true&


  /deep/ {
 ^
      Expected selector.
   ╷
76 │   /deep/{
   │   ^
   ╵
  stdin 76:3  root stylesheet
      in /root/ferry_web/src/layout/components/TagsView/ScrollPane.vue (line 76, column 3)


 @ ./src/layout/components/TagsView/ScrollPane.vue?vue&type=style&index=0&id=2dda9ac4&lang=scss&scoped=true& 1:0-571 1:0-571
 @ ./src/layout/components/TagsView/ScrollPane.vue
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/layout/components/TagsView/index.vue?vue&type=script&lang=js&
 @ ./src/layout/components/TagsView/index.vue?vue&type=script&lang=js&
 @ ./src/layout/components/TagsView/index.vue
 @ ./src/layout/components/index.js
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/layout/index.vue?vue&type=script&lang=js&
 @ ./src/layout/index.vue?vue&type=script&lang=js&
 @ ./src/layout/index.vue
 @ ./src/router/index.js
 @ ./src/main.js
 @ multi ./src/main.js

 error  in ./src/views/dashboard/admin/index.vue?vue&type=style&index=0&id=b66dfbde&lang=scss&scoped=true&


/deep/ .el-tabs__item{
^
      Expected selector.
    ╷
182 │ /deep/ .el-tabs__item{
    │ ^
    ╵
  stdin 182:1  root stylesheet
      in /root/ferry_web/src/views/dashboard/admin/index.vue (line 182, column 1)


 @ ./src/views/dashboard/admin/index.vue?vue&type=style&index=0&id=b66dfbde&lang=scss&scoped=true& 1:0-566 1:0-566
 @ ./src/views/dashboard/admin/index.vue
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/dashboard/index.vue?vue&type=script&lang=js&
 @ ./src/views/dashboard/index.vue?vue&type=script&lang=js&
 @ ./src/views/dashboard/index.vue
 @ ./src/router/index.js
 @ ./src/main.js
 @ multi ./src/main.js

 ERROR  Build failed with errors.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] build:prod: `vue-cli-service build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] build:prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2021-10-13T07_21_40_983Z-debug.log

build:stage 后生成部分js文件没有保存到 static目录下

npm run build:stage后
build:stage 后生成部分js文件没有保存到 static目录下
直接保存在系统配置的web目录下了。 有些不优雅,无奈水平有限制,也没有找到在哪配置。 还是请大家帮忙吧。

正常的 生成 js后,一般保存应该在 static目录下对吗

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.