编写业务性组件最难的地方不在于技术,而在于沟通,

1:前端将业务给封装了起来,必然导致产品在设计的时候多了一层考虑,在新增功能的时候 他要考虑这个功能是不是在其他项目也需要,如果不是的话,就不应该放在业务性组件里面,而业务方如果强硬要求必须放在这个地方的话,又该如何处理呢?

2:前端将多端通用的地方封装在了一起,但是不同的项目存在不同的服务器端开发人员,每个人的开发风格不一致,字段明明不一致,这种兼容性如何处理呢?

3:新增的需求在一个端先需要,而另外一个端要等到条件成熟才会显示,

4:有的系统需要权限控制,而有的系统暂时不需要权限

回答:

  1:我们很难因为自己的需求去要求客户来适应我们的方案,所以我们在设计业务性组件的时候,需要留出一个地方进行个性化定制,即我们的业务性组件必须暴露出一个可以个性化显示的地方以满足业务不断变更的需求

  2:对于不同服务器端不同的开发风格,去要求服务器端统一采用一个风格是很难的,所以前端在使用业务性组件的时候 对于从服务器端获取的数据,必须进行二次加工以满足业务性组件的字段要求

  3:多端共用一个组件的情况,一个功能在一个端先上,另一个端后上,或者某个功能只有满足某些条件才会显示,业务性组件需要暴露出属性,以动态配置内部元素的显示

  4:对于权限,业务性组件在内部声明一个权限规则,前端使用方基于自身的需求 去配置权限

综上所述

  业务性组件必须做到功能的可配置、各端之间内部个性化需求的满足、必须给出业务性组件对于服务器端接口的详细要求文档(方便与服务端对接)、业务性组件所封装的业务文档(方便与业务方对接)

使用npm私有服务器保存公司内部强业务类型组件(三):关于业务性组件的一点思考的更多相关文章

  1. 使用npm私有服务器保存公司内部强业务类型组件(一):npm私有服务器搭建

    1:安装centOS虚拟机 2:安装完成虚拟机后完成后开启系统网卡: 进入到/etc/sysconfig/network-scprits/ 打开ifcfg-ens33文件 找到 ONBOOT=NO 改 ...

  2. 使用npm私有服务器保存公司内部强业务类型组件(二):vue-webpack框架

    一套基于vue webpack element-ui的npm私有服务器开发组件框架 下载 在配置的有两个地方需要注意: 1:配置library library选项: 如果设置此选项,会将bundle导 ...

  3. NPM私有服务器架设 FOR CentOS

    确保计算机能够连接互连网. 一.安装 Couchdb1.6 1.(CentOS 6.7)如果版本低于6.7请使用下面命令更新系统库. yum update 2.使用下面命令安装依赖库 yum inst ...

  4. 公司内部Samba 服务器架设

    1.需求 在公司内部打造一个文件管理系统,其作用域仅仅在公司内部,支持在线对文件的修改和保存操作等,同时也要注意权限问题. 2.策划 目前设立四个群组:运维.开发 .测试和普通,当然所对应的对文件的访 ...

  5. 公司内部搭建git服务器

    前言 因为gitHub上的项目是公开的,不适合公司内部项目放在上面,而私人的需要收费,这绝非是我们愿意的.所以找了个跟gitHub很相似,但是又免费的gitLab.现在将搭建gitLab过程记录一下留 ...

  6. 关于公司内部的Nuget服务

    简介 公司内部搭建的Nuget服务,私有安全,局域网,速度快. 使用方法 VS -> 工具 -> 库程序包管理器 -> 程序包管理器设置 -> 程序包源 -> 新增以下配 ...

  7. 使用verdaccio 搭建npm私有仓库

    使用verdaccio 搭建npm私有仓库 1. 为什么要搭建私有的npm仓库?    随着公司的业务越来越复杂,项目迭代速度也越来越快,那么项目间的常用的业务代码共享变得非常之有必要.但是对于公司的 ...

  8. 基于verdaccio的npm私有仓库搭建

    详见个人博客:https://shengchangwei.github.io/verdaccio/ 一.使用npm安装 npm install --global verdaccio 二.cmd 启动 ...

  9. 使用verdaccio+docker搭建npm私有仓库以及使用

    公司内部前端组件或库的共享等,搭建一个npm私有库就很方便,现在中大型公司也基本都有自己的npm私有库,这篇文章,和大家一起共同搭建一个npm私有库,共同学习 前置条件 一台电脑 可以联网 一.安装d ...

随机推荐

  1. PHP filter_var 函数用法

    先介绍下PHP Filter PHP手册地址:http://php.net/manual/zh/ref.filter.php PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤. ...

  2. eslint的安装与使用

    什么是 ESLint ESLint(中文站点)是一个开源的 JavaScript 代码检查工具,使用 Node.js 编写,由 Nicholas C. Zakas 于 2013 年 6 月创建.ESL ...

  3. Python之socketserver

    import threading from socketserver import ThreadingTCPServer,BaseRequestHandler import sys import lo ...

  4. python-布尔表达式

    1.布尔类型(bool): 1.只有两种情况  真/假 (True /  False) 2. print(type(False))      # <class 'bool'> type() ...

  5. vue前端面试题知识点整理

    vue前端面试题知识点整理 1. 说一下Vue的双向绑定数据的原理 vue 实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来劫 ...

  6. 使用第三方jar时出现的问题

    Eclipse下把jar包放到工程lib下和通过buildpath加载有什么不同(解决找不到类的中级方法) 我通过Eclipse的 User Libranry 将jar导入 Eclipse里面,编译没 ...

  7. Redis的数据结构、通用操作及其特性

    Redis的数据结构 五种数据类型: 字符串(String).字符串列表(list).字符串集合(set).有序字符串集合(sorted set).哈希(hash) key定义的注意点: 不要过长,不 ...

  8. kbmmemtable sorton 报错 : List index out of bounds

    同一数据集,不同的排序条件,有的可以,但某一条件,却能100%重现报错. procedure TkbmIndex.InternalFastQuickSort(const L,R:Integer); v ...

  9. 原创《分享(Angular 和 Vue)按需加载的项目实践优化方案》

    针对前端优化的点有很多,例如:图片压缩,雪碧图,js/css/html 文件的压缩合并,  cdn缓存, 减少重定向, 按需加载 等等 最近有心想针对 ionic项目 和 vue项目,做一个比较大的优 ...

  10. HL-D793G七位蓝色+PT6311驱动

    和之前那块一起买的.又画了这个屏幕驱动,还画了灯丝电源驱动,和以前画的stm8核心板在JLC拼板. 亚光黑颜色,不单独收钱! 切好水洗吹干! 忘记给排针加丝印,手写代之. 焊接的时候,脑子发热,以为把 ...