GithubHelp home page GithubHelp logo

52admln / ts-vue-questionnaire Goto Github PK

View Code? Open in Web Editor NEW
100.0 5.0 30.0 1.29 MB

微型问卷调查系统 TypeScript 版本,演示账号:admin / admin

Home Page: http://wenjuan.52admin.net

License: MIT License

JavaScript 4.14% HTML 0.55% Vue 78.48% TypeScript 16.83%
vuejs element-ui axios typescript sass echarts

ts-vue-questionnaire's Introduction

微型问卷调查系统 TypeScript 版

适用于学校及单位的问卷调查系统,其特点在于参与人员需提前导入,在可控范围内进行问卷调查。

功能

  1. 创建问卷、编辑问卷、删除问卷、修改问卷截止时间
  2. 可查看结果统计、样本数据、回收情况,单题目交叉分析
  3. 使用 Excel 批量导入用户、批量删除用户,用户管理
  4. 问卷调查页面适配移动端
  5. 支持 TypeScript

目录结构

├── public                     # public static assets (directly copied)
│   │── favicon.ico            # favicon
│   └── index.html             # index.html template
├── src                        # main source code
│   ├── api                    # api service
│   ├── assets                 # module assets like fonts, images (processed by webpack)
│   ├── components             # global components
│   ├── config                 # config of enum etc.
│   ├── filters                # global filter
│   ├── plugins                # third party packages
│   ├── router                 # router
│   ├── store                  # store
│   ├── types                  # namespace declaration
│   ├── utils                  # global utils
│   ├── views                  # views
│   ├── App.vue                # main app component
│   ├── global.d.ts            # third types declaration
│   ├── main.ts                # app entry file
│   ├── shim-request-proper-
        ty.d.ts                # bind $axios on Vue property
│   ├── shims-tsx.d.ts         # type definition shims
│   └── shims-vue.d.ts         # type definition shims
├── tests/                     # tests
├── .browserslistrc            # browserslist config file (to support Autoprefixer)
├── .editorconfig              # editor code format consistency config
├── .env.xxx                   # env variable configuration
├── .eslintrc.js               # eslint config
├── babel.config.js            # babel config
├── jest.config.js             # jest unit test config
├── package.json               # package.json
├── tsconfig.json              # typescript config
└── vue.config.js              # vue-cli config

项目运行

安装依赖

yarn install

开发调试

yarn run serve

生产环境部署

yarn run build

自定义 Vue 配置

查看 Configuration Reference.

第三方插件

  • xlsx
  • file-saver
  • element-ui
  • echarts
  • qrcode
  • clipboard

批量导入

用户批量导入模板文件见 /Import_Template.xls

API 及数据库

.env.development

本地环境请修改根目录下 .env.development 文件中的 VUE_APP_BASE_API 为本地调试的后端部署地址。

.env.production

生产环境请修改根目录下 .env.production 文件中的 VUE_APP_BASE_API 为线上的后端部署地址。

查看 vue-questionnaire-api.

后端代码不堪入目,已计划重构。

LICENSE

MIT

鼓励

ts-vue-questionnaire's People

Contributors

52admln avatar dependabot[bot] 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

ts-vue-questionnaire's Issues

离线部署

请问有没有比较简单的离线部署方式

建议,可否答完问卷后,提供一个小的礼品赠送的功能

感谢作者提供的程序,ui很好看,建议,可否答完问卷后,提供一个小的礼品赠送的功能,可以随机赠送,或者是全部赠送,或者抽奖赠送,添加问卷的时候,简单的设置一下礼品就可以了,然后用户答完问卷后,让用户提供地址信息进行礼品派送

yarn run serve 时报错

Failed to compile with 1 errors 1:13:39 PM
error in ./src/utils/excel.ts

Module Error (from ./node_modules/eslint-loader/index.js):
error: 'cellValue' is never reassigned. Use 'const' instead (prefer-const) at src\utils\excel.ts:35:11:
33 | rowspan = parseInt(rowspanStr)
34 | }

35 | let cellValue = cell.innerText
| ^
36 | // Skip ranges
37 | ranges.forEach(function(range) {
38 | if (R >= range.s.r && R <= range.e.r && outRow.length >= range.s.c && outRow.length <= range.e.c) {

error: Missing space before function parentheses (space-before-function-paren) at src\utils\excel.ts:37:30:
35 | let cellValue = cell.innerText
36 | // Skip ranges

37 | ranges.forEach(function(range) {
| ^
38 | if (R >= range.s.r && R <= range.e.r && outRow.length >= range.s.c && outRow.length <= range.e.c) {
39 | for (let i = 0; i <= range.e.c - range.s.c; ++i) outRow.push(null)
40 | }

error: 'result' is never reassigned. Use 'const' instead (prefer-const) at src\utils\excel.ts:201:9:
199 | }))
200 | // 以第一行为初始值

201 | let result = colWidth[0]
| ^
202 | for (let i = 1; i < colWidth.length; i++) {
203 | for (let j = 0; j < colWidth[i].length; j++) {
204 | if (result[j]['wch'] < colWidth[i][j]['wch']) {

3 errors found.
3 errors potentially fixable with the --fix option.

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.