# form-web

> form-web

Latest version **1.0.0** (published 2020-12-11) · ISC license · 0 weekly downloads

## Install

```sh
npm install form-web
pnpm add form-web
yarn add form-web
bun add form-web
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.0 |
| Published | 2020-12-11 |
| First published | 2020-12-11 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 23 |
| Unpacked size | 2.8 MB |
| Known vulnerabilities | 0 (+27 in 3 direct dependencies) |
| Install scripts | no |
| Maintainers | cooper_fly |
| Keywords | form-web |

## Links

- npm: https://www.npmjs.com/package/form-web
- Repository: http://gitlab.crc.com.cn/crcsoft-ems-pd/form-web
- npm.io page: https://npm.io/package/form-web

## Dependencies (23)

- [vue](https://npm.io/package/vue.md) ^2.6.11
- [vuex](https://npm.io/package/vuex.md) ^3.1.1
- [axios](https://npm.io/package/axios.md) ^0.19.2
- [js-md5](https://npm.io/package/js-md5.md) ^0.7.3
- [moment](https://npm.io/package/moment.md) ^2.26.0
- [core-js](https://npm.io/package/core-js.md) ^3.6.4
- [echarts](https://npm.io/package/echarts.md) ^4.8.0
- [viewerjs](https://npm.io/package/viewerjs.md) ^1.6.1
- [vue-i18n](https://npm.io/package/vue-i18n.md) ^8.17.7
- [crypto-js](https://npm.io/package/crypto-js.md) ^4.0.0
- [lodash-es](https://npm.io/package/lodash-es.md) ^4.17.15
- [accounting](https://npm.io/package/accounting.md) ^0.4.1
- [vue-router](https://npm.io/package/vue-router.md) ^3.0.1
- [view-design](https://npm.io/package/view-design.md) ^4.2.0
- [ems-budget-web](https://npm.io/package/ems-budget-web.md) latest
- [ems-common-lang](https://npm.io/package/ems-common-lang.md) latest
- [form-manage-web](https://npm.io/package/form-manage-web.md) latest
- [form-wallet-web](https://npm.io/package/form-wallet-web.md) latest
- [ems-accounting-web](https://npm.io/package/ems-accounting-web.md) latest
- [ems-components-new](https://npm.io/package/ems-components-new.md) latest
- [ems-base-payment-worktable](https://npm.io/package/ems-base-payment-worktable.md) latest
- [ems-base-accounting-platform](https://npm.io/package/ems-base-accounting-platform.md) latest
- [ems-base-receivable-worktable](https://npm.io/package/ems-base-receivable-worktable.md) latest

## Alternatives

- [mobx-react](https://npm.io/package/mobx-react.md) — 2.8M weekly downloads
- [rc-tree](https://npm.io/package/rc-tree.md) — 2.6M weekly downloads
- [@react-oauth/google](https://npm.io/package/@react-oauth/google.md) — 1.3M weekly downloads
- [@wagmi/connectors](https://npm.io/package/@wagmi/connectors.md) — 877.0K weekly downloads
- [vee-validate](https://npm.io/package/vee-validate.md) — 836.4K weekly downloads

## Recent versions

- 1.0.0 (latest) — 2020-12-11

## README

# form_web包开发注意事项：

本规范目标：代码风格统一，提升可维护性，可拓展，可控性；

## 代码风格

### Vscode 相关配置

* 1. 统一使用`Vscode`作为开发编辑器，基础配置如下
```
    //开启保存的时候自动格式化
    "editor.formatOnSave": true,
    // 编辑粘贴自动格式化
    "editor.formatOnPaste": true,
    // 每行回车时格式化
    "editor.formatOnType": true,
    "editor.lineHeight": 18,
    "editor.fontSize": 16,
    "editor.fontFamily": "Consolas, 'Courier New', monospace",
    "editor.detectIndentation": true,
    "window.title": "${dirty}${activeEditorMedium}${separator}${rootName}",
    "editor.renderWhitespace": "none",
    "editor.trimAutoWhitespace": true,
    "editor.lineNumbers": "on",
    "editor.wordWrap": "wordWrapColumn",
    "editor.wordWrapColumn": 145,
    "editor.autoClosingBrackets": "always",
    "html.format.preserveNewLines": false,

```

* 2. 代码统一使用`2个空格`缩进，配置如下

```
    "editor.tabSize": 2,
    "editor.insertSpaces": true,
```

* 3. 统一使用`Vetur`插件格式化vue代码，Vetur配置如下：（注意Vetur版本要新的）

```
    "vetur.completion.autoImport": false,
    "vetur.format.defaultFormatterOptions": {
      "prettier": {
          //属性行的长度 格式化代码 超过会自动换行
          "printWidth": 120
      }
    }
```

* 4. 其他配置

```
    // 如果编辑器卡配置下面这个为false
    "search.followSymlinks": false,
    // 自动提示 视乎电脑配置高低，配置高的可以开启，配置低的会卡
    "editor.quickSuggestions": true,
    // 保存时如果速度较慢，则配置此项-格式化超时时间 单位秒
    "editor.formatOnSaveTimeout": 300,
```

### JS书写规范

1. 变量和方法名采用`驼峰`命名法
2. 变量和方法名至少由两个单词组成
3. 禁止对内置原生方法进行扩展，如Number.xxx = fn或Number.prototype.xxx  = fn
4. 切勿滥用全局对象，如确实需要创建全局对象需统一在入口文件内显式的挂载到window下


### Vue单文件组件格式

  1. 为了保持统一的编码格式，vue单文件组件的写法按如下规则

  ```
  <template>...</template>
                                <-注意，template和script之间空一行
  <script>
    import XXX from 'xxxxx'
                                <-注意，import和export之间需要空一行
    export default {            <-注意，此处配置顺序按如下顺序，如某项没有则可不写
      name: '',                 
      components: {},
      props: {},
      data () {
        return {}
      },
      computed: {},
      beforeCreate (){},
      created (){},
      beforeMount (){},
      mounted (){},
      beforeUpdate (){},
      updated (){},
      beforeDestroy (){},
      destroyed (){},
      methods: {},
      watch: {},
    }
  </script>
                              <-注意，script和style之间空一行
  <style lang="less" scoped>  <-注意，style必须加scoped
    ...
  </style>
  ```

  如果有组件内的路由的钩子，则放在watch后面，依然按照beforeXX,XXed顺序放置。

  2. 单文件组件代码不能超过`300`行。
  3. 路由组件的 name 是必需的，和路由配置的name对应。
  4. template 模板内不能做复杂的计算
  5. 不能使用jQuery等直接操作Dom


### 其他规则


#### 1、组件放置规则：
  * 1）业务无关的公共组件，放置于src\components
  * 2）业务关联性强的组件，放置于自身目录中的components

#### 2、样式：公共样式应注意命名空间
 * 1）表单样式统一置于src\components\globalStyles -> singlePage-wrapper内
 * 2）组件样式需置于scoped下

---
_Source: https://npm.io/package/form-web · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
