From fcd2d6245d81014e1addc80ccea8a96c33ac477d Mon Sep 17 00:00:00 2001 From: yuyuanshifu <747342561@qq.com> Date: Fri, 17 Jul 2020 19:44:07 +0800 Subject: [PATCH] new multipart upload --- package-lock.json | 74 ++++++-- package.json | 4 + routers/repo/attachment.go | 8 +- templates/repo/datasets/dataset.tmpl | 1 - templates/repo/datasets/index.tmpl | 6 +- web_src/js/App.vue | 206 ++++++++++++++++++++++ web_src/js/assets/bg.png | Bin 0 -> 1709 bytes web_src/js/assets/body_bg.gif | Bin 0 -> 49 bytes web_src/js/assets/css/iconfont.css | 65 +++++++ web_src/js/assets/css/iconfont.eot | Bin 0 -> 4532 bytes web_src/js/assets/css/iconfont.js | 1 + web_src/js/assets/css/iconfont.json | 93 ++++++++++ web_src/js/assets/css/iconfont.svg | 62 +++++++ web_src/js/assets/css/iconfont.ttf | Bin 0 -> 4364 bytes web_src/js/assets/css/iconfont.woff | Bin 0 -> 2960 bytes web_src/js/assets/css/iconfont.woff2 | Bin 0 -> 2412 bytes web_src/js/assets/logo.png | Bin 0 -> 2658 bytes web_src/js/components/Breakpoint.vue | 230 +++++++++++++++++++++++++ web_src/js/components/Chunk.vue | 153 +++++++++++++++++ web_src/js/components/Md5.vue | 244 +++++++++++++++++++++++++++ web_src/js/components/Skip.vue | 233 +++++++++++++++++++++++++ web_src/js/components/Uploader.vue | 112 ++++++++++++ web_src/js/index.js | 21 +++ web_src/js/router/index.js | 39 +++++ 24 files changed, 1528 insertions(+), 24 deletions(-) mode change 100644 => 100755 templates/repo/datasets/dataset.tmpl mode change 100644 => 100755 templates/repo/datasets/index.tmpl create mode 100755 web_src/js/App.vue create mode 100755 web_src/js/assets/bg.png create mode 100755 web_src/js/assets/body_bg.gif create mode 100755 web_src/js/assets/css/iconfont.css create mode 100755 web_src/js/assets/css/iconfont.eot create mode 100755 web_src/js/assets/css/iconfont.js create mode 100755 web_src/js/assets/css/iconfont.json create mode 100755 web_src/js/assets/css/iconfont.svg create mode 100755 web_src/js/assets/css/iconfont.ttf create mode 100755 web_src/js/assets/css/iconfont.woff create mode 100755 web_src/js/assets/css/iconfont.woff2 create mode 100755 web_src/js/assets/logo.png create mode 100755 web_src/js/components/Breakpoint.vue create mode 100755 web_src/js/components/Chunk.vue create mode 100755 web_src/js/components/Md5.vue create mode 100755 web_src/js/components/Skip.vue create mode 100755 web_src/js/components/Uploader.vue mode change 100644 => 100755 web_src/js/index.js create mode 100755 web_src/js/router/index.js diff --git a/package-lock.json b/package-lock.json index 71183fed4..8639b81ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1797,8 +1797,7 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "optional": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "assign-symbols": { "version": "1.0.0", @@ -1919,6 +1918,14 @@ "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", "optional": true }, + "axios": { + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", + "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", + "requires": { + "follow-redirects": "1.5.10" + } + }, "babel-loader": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", @@ -2847,7 +2854,6 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "optional": true, "requires": { "delayed-stream": "~1.0.0" } @@ -3584,8 +3590,7 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "optional": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "delegate": { "version": "3.2.0", @@ -4801,8 +4806,7 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "optional": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fancy-log": { "version": "1.3.3", @@ -5172,6 +5176,29 @@ "readable-stream": "^2.3.6" } }, + "follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "requires": { + "debug": "=3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, "fomantic-ui": { "version": "2.8.4", "resolved": "https://registry.npmjs.org/fomantic-ui/-/fomantic-ui-2.8.4.tgz", @@ -7594,8 +7621,7 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsesc": { "version": "2.5.2", @@ -8651,14 +8677,12 @@ "mime-db": { "version": "1.44.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "optional": true + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { "version": "2.1.27", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "optional": true, "requires": { "mime-db": "1.44.0" } @@ -11996,6 +12020,11 @@ } } }, + "simple-uploader.js": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/simple-uploader.js/-/simple-uploader.js-0.5.4.tgz", + "integrity": "sha512-Dmysgp0wyKqGdnZ9qnxS7QTg/Hfr25GxKM2XlrEnmzSPFmKroFqzW4Qaq/AbJDBvXv4YPGqS3S5YfVI3UxAU0A==" + }, "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -12187,6 +12216,11 @@ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, + "spark-md5": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.1.tgz", + "integrity": "sha512-0tF3AGSD1ppQeuffsLDIOWlKUd3lS92tFxcsrh5Pe3ZphhnoK+oXIBTzOAThZCiuINZLvpiLH/1VS1/ANEJVig==" + }, "sparkles": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", @@ -13620,8 +13654,7 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "type": { "version": "1.2.0", @@ -14295,6 +14328,19 @@ "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-0.4.5.tgz", "integrity": "sha512-bhP7MlgJQ8TIkZJXAfDf78uJO+mEI3CaLABLjv0WNzr4CcGRGPIAItyWYnP6LsPA4Oq0WE+suidNs6dgpO4RHg==" }, + "vue-router": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.3.4.tgz", + "integrity": "sha512-SdKRBeoXUjaZ9R/8AyxsdTqkOfMcI5tWxPZOUX5Ie1BTL5rPSZ0O++pbiZCeYeythiZIdLEfkDiQPKIaWk5hDg==" + }, + "vue-simple-uploader": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/vue-simple-uploader/-/vue-simple-uploader-0.7.4.tgz", + "integrity": "sha512-33uv07lkVj7m9gI7IIrQHAUcZkvl70g55lxnfnO/MZ8icwqiemW9Ah4ZexGWNrEfL1p6fV54PlOGICU17aBPFQ==", + "requires": { + "simple-uploader.js": "^0.5.4" + } + }, "vue-style-loader": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", diff --git a/package.json b/package.json index 7fb8246af..3e11dc18f 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "@babel/preset-env": "7.9.6", "@babel/runtime": "7.9.6", "@primer/octicons": "9.6.0", + "axios": "0.19.2", "babel-loader": "8.1.0", "clipboard": "2.0.6", "core-js": "3.6.5", @@ -34,6 +35,7 @@ "postcss-loader": "3.0.0", "postcss-preset-env": "6.7.0", "postcss-safe-parser": "4.0.2", + "spark-md5": "3.0.1", "svg-sprite-loader": "5.0.0", "svgo": "1.3.2", "svgo-loader": "2.2.1", @@ -43,6 +45,8 @@ "vue-bar-graph": "1.2.0", "vue-calendar-heatmap": "0.8.4", "vue-loader": "15.9.2", + "vue-router": "3.3.4", + "vue-simple-uploader": "0.7.4", "vue-template-compiler": "2.6.11", "webpack": "4.43.0", "webpack-cli": "3.3.11", diff --git a/routers/repo/attachment.go b/routers/repo/attachment.go index 0233725dd..63af61fb7 100755 --- a/routers/repo/attachment.go +++ b/routers/repo/attachment.go @@ -360,20 +360,20 @@ func NewMultipart(ctx *context.Context) { return } - err := upload.VerifyFileType(ctx.Params("file_type"), strings.Split(setting.Attachment.AllowedTypes, ",")) + err := upload.VerifyFileType(ctx.Query("fileType"), strings.Split(setting.Attachment.AllowedTypes, ",")) if err != nil { ctx.Error(400, err.Error()) return } if setting.Attachment.StoreType == storage.MinioStorageType { - totalChunkCounts := ctx.ParamsInt("totalChunkCounts") + totalChunkCounts := ctx.QueryInt("totalChunkCounts") if totalChunkCounts > minio_ext.MaxPartsCount { ctx.Error(400, fmt.Sprintf("chunk counts(%d) is too much", totalChunkCounts)) return } - fileSize := ctx.ParamsInt64("size") + fileSize := ctx.QueryInt64("size") if fileSize > minio_ext.MaxMultipartPutObjectSize { ctx.Error(400, fmt.Sprintf("file size(%d) is too big", fileSize)) return @@ -390,7 +390,7 @@ func NewMultipart(ctx *context.Context) { UUID: uuid, UserID: ctx.User.ID, UploadID: uploadID, - Md5: ctx.Params("md5"), + Md5: ctx.Query("md5"), Size: fileSize, TotalChunks:totalChunkCounts, }) diff --git a/templates/repo/datasets/dataset.tmpl b/templates/repo/datasets/dataset.tmpl old mode 100644 new mode 100755 index 8ea4d9f64..ac0fd2b79 --- a/templates/repo/datasets/dataset.tmpl +++ b/templates/repo/datasets/dataset.tmpl @@ -3,6 +3,5 @@
-
diff --git a/templates/repo/datasets/index.tmpl b/templates/repo/datasets/index.tmpl old mode 100644 new mode 100755 index fbf386ec9..7f292d99e --- a/templates/repo/datasets/index.tmpl +++ b/templates/repo/datasets/index.tmpl @@ -65,11 +65,7 @@
- {{if .Permission.CanWrite $.UnitTypeDatasets}} -
- {{template "repo/datasets/dataset" .}} -
- {{end}} +
diff --git a/web_src/js/App.vue b/web_src/js/App.vue new file mode 100755 index 000000000..d54e33ff2 --- /dev/null +++ b/web_src/js/App.vue @@ -0,0 +1,206 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/assets/bg.png b/web_src/js/assets/bg.png new file mode 100755 index 0000000000000000000000000000000000000000..7b9b1a5fbf3b8248d173490bb15a57c01ca9b05b GIT binary patch literal 1709 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 bH#J@=4Al&k2InS.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}")}catch(c){console&&console.log(c)}}!function(c){if(document.addEventListener)if(~["complete","loaded","interactive"].indexOf(document.readyState))setTimeout(c,0);else{var t=function(){document.removeEventListener("DOMContentLoaded",t,!1),c()};document.addEventListener("DOMContentLoaded",t,!1)}else document.attachEvent&&(l=c,o=n.document,i=!1,(a=function(){try{o.documentElement.doScroll("left")}catch(c){return void setTimeout(a,50)}e()})(),o.onreadystatechange=function(){"complete"==o.readyState&&(o.onreadystatechange=null,e())});function e(){i||(i=!0,l())}var l,o,i,a}(function(){var c,t,e,l,o,i;(c=document.createElement("div")).innerHTML=a,a=null,(t=c.getElementsByTagName("svg")[0])&&(t.setAttribute("aria-hidden","true"),t.style.position="absolute",t.style.width=0,t.style.height=0,t.style.overflow="hidden",e=t,(l=document.body).firstChild?(o=e,(i=l.firstChild).parentNode.insertBefore(o,i)):l.appendChild(e))})}(window); \ No newline at end of file diff --git a/web_src/js/assets/css/iconfont.json b/web_src/js/assets/css/iconfont.json new file mode 100755 index 000000000..3119c8772 --- /dev/null +++ b/web_src/js/assets/css/iconfont.json @@ -0,0 +1,93 @@ +{ + "id": "1720184", + "name": "upload", + "font_family": "iconfont", + "css_prefix_text": "icon-", + "description": "", + "glyphs": [ + { + "icon_id": "6049876", + "name": "压缩包", + "font_class": "zip", + "unicode": "e626", + "unicode_decimal": 58918 + }, + { + "icon_id": "553902", + "name": "文档", + "font_class": "unknown", + "unicode": "e613", + "unicode_decimal": 58899 + }, + { + "icon_id": "1004653", + "name": "文件-音频", + "font_class": "audio", + "unicode": "e645", + "unicode_decimal": 58949 + }, + { + "icon_id": "1071023", + "name": "图像1", + "font_class": "image", + "unicode": "e656", + "unicode_decimal": 58966 + }, + { + "icon_id": "1638517", + "name": "视频", + "font_class": "video", + "unicode": "e617", + "unicode_decimal": 58903 + }, + { + "icon_id": "13137449", + "name": "图像_未选择", + "font_class": "selimage", + "unicode": "e724", + "unicode_decimal": 59172 + }, + { + "icon_id": "4933421", + "name": "文件夹", + "font_class": "dir", + "unicode": "e761", + "unicode_decimal": 59233 + }, + { + "icon_id": "521050", + "name": "添加", + "font_class": "tianjia", + "unicode": "e61f", + "unicode_decimal": 58911 + }, + { + "icon_id": "602556", + "name": "网盘-新建文件夹", + "font_class": "mkdir", + "unicode": "e607", + "unicode_decimal": 58887 + }, + { + "icon_id": "2305613", + "name": "上传文件", + "font_class": "upload", + "unicode": "e614", + "unicode_decimal": 58900 + }, + { + "icon_id": "4933419", + "name": "文件", + "font_class": "document", + "unicode": "e760", + "unicode_decimal": 59232 + }, + { + "icon_id": "6583375", + "name": "文件", + "font_class": "folder", + "unicode": "e686", + "unicode_decimal": 59014 + } + ] +} diff --git a/web_src/js/assets/css/iconfont.svg b/web_src/js/assets/css/iconfont.svg new file mode 100755 index 000000000..dec91fd47 --- /dev/null +++ b/web_src/js/assets/css/iconfont.svg @@ -0,0 +1,62 @@ + + + + + +Created by iconfont + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web_src/js/assets/css/iconfont.ttf b/web_src/js/assets/css/iconfont.ttf new file mode 100755 index 0000000000000000000000000000000000000000..1b922157c38796bcded195bcfea4eb9ba4b4529d GIT binary patch literal 4364 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 Q7N_Rak5uz#J~J^ z{{LZ#KW7R65I#`V0Ac!U@A+4Iyox%g8GzgjgtI|}HJ(BvUja2b$X@^e)bV~LkH&?| zA>LrF3jn;}6nJKEr>*ZrD%lInfA^_?(3S|e)OHaRK`jvEG9ZrfPQa2c(gLr8S}Mqe zKxk@$$7O%Y@49?2{aq)6Jb-ehk*|Yu;jch`7z7$33sC*YG%Bc#f&VcF=hKXw_9CwM zUjyG4I11KW0+FKA_~iNZTnfpHM4IwUrSy_XfdQLv@)U_grUR)6ik)|;oCBf*)=@?G zL885*zY9^er~AZ8jL`0K}K$g zJojAY!?)B_wXk@xkC?&GJ3(G+Hu?f+SZaKO6@(LuO}y(=yA1Ei$(t#7_4b^N-G^I( zu3Iv?SK;niL*l8#y(RoWa7(Fk(&z_>oo)#w_7U;ump{?%+{D8h<9hqzZ9&FOl8pr~ z8AS!~8@GkWDHOBX5vgpIVd;-PNQ*I^WQ#GrQx>b@de~$%F7_2BOK@8#qFWE#+Vxy_ zXP-nFOYzF{TH}q^*j;QkyQ*Er&~TKprpBpSscP)3{5l>`V-$~Y$)ODD=9pVC&Bd

BIL^kU&zA9;--)*8 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 literal 0 HcmV?d00001 diff --git a/web_src/js/assets/logo.png b/web_src/js/assets/logo.png new file mode 100755 index 0000000000000000000000000000000000000000..b48e55a9d22b6feade06ab15b49ed786a08fbcdc GIT binary patch literal 2658 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 Q6951J07*qoM6N<$g03$JF#rGn literal 0 HcmV?d00001 diff --git a/web_src/js/components/Breakpoint.vue b/web_src/js/components/Breakpoint.vue new file mode 100755 index 000000000..6fd25c275 --- /dev/null +++ b/web_src/js/components/Breakpoint.vue @@ -0,0 +1,230 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/components/Chunk.vue b/web_src/js/components/Chunk.vue new file mode 100755 index 000000000..362fb6e66 --- /dev/null +++ b/web_src/js/components/Chunk.vue @@ -0,0 +1,153 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/components/Md5.vue b/web_src/js/components/Md5.vue new file mode 100755 index 000000000..ee5d04149 --- /dev/null +++ b/web_src/js/components/Md5.vue @@ -0,0 +1,244 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/components/Skip.vue b/web_src/js/components/Skip.vue new file mode 100755 index 000000000..45acb2268 --- /dev/null +++ b/web_src/js/components/Skip.vue @@ -0,0 +1,233 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/components/Uploader.vue b/web_src/js/components/Uploader.vue new file mode 100755 index 000000000..c8ca67676 --- /dev/null +++ b/web_src/js/components/Uploader.vue @@ -0,0 +1,112 @@ + + + + + \ No newline at end of file diff --git a/web_src/js/index.js b/web_src/js/index.js old mode 100644 new mode 100755 index 1c2ab7b2c..960191487 --- a/web_src/js/index.js +++ b/web_src/js/index.js @@ -21,6 +21,16 @@ import highlight from './features/highlight.js'; import ActivityTopAuthors from './components/ActivityTopAuthors.vue'; import {initNotificationsTable, initNotificationCount} from './features/notification.js'; import {createCodeEditor} from './features/codeeditor.js'; +import App from './App.vue' +import router from './router' +import uploader from 'vue-simple-uploader' + +Vue.use(uploader); + +//import './assets/css/iconfont.css' + +//Vue.config.productionTip = false + const {AppSubUrl, StaticUrlPrefix, csrf} = window.config; @@ -2555,6 +2565,7 @@ $(document).ready(async () => { initAdmin(); initCodeView(); initVueApp(); + initVueUploader(); initTeamSettings(); initCtrlEnterSubmit(); initNavbarContentToggle(); @@ -3165,6 +3176,16 @@ function initVueApp() { }); } +function initVueUploader() { + /* eslint-disable no-new */ + new Vue({ + el: '#uploader', + router, + components: { App }, + template: '' + }); +} + window.timeAddManual = function () { $('.mini.modal') .modal({ diff --git a/web_src/js/router/index.js b/web_src/js/router/index.js new file mode 100755 index 000000000..19db41378 --- /dev/null +++ b/web_src/js/router/index.js @@ -0,0 +1,39 @@ +import Vue from 'vue' +import Router from 'vue-router' +import Uploader from '../components/Uploader.vue' +import Chunk from '../components/Chunk.vue' +import Md5 from '../components/Md5.vue' +import Skip from '../components/Skip.vue' +import Breakpoint from '../components/Breakpoint.vue' + +Vue.use(Router) + +export default new Router({ + routes: [ + { + path: '/', + name: 'uploader', + component: Uploader + }, + { + path: '/chunk', + name: 'chunk', + component: Chunk + }, + { + path: '/skip', + name: 'skip', + component: Skip + }, + { + path: '/md5', + name: 'md5', + component: Md5 + }, + { + path: '/breakpoint', + name: 'breakpoint', + component: Breakpoint + }, + ] +})