框架版本问题
系统每设置一个操作就会卡
原因:代码版本问题导致,弹出框控制代码无效,需降低node.js代码版本
解决:通过nvm切换node.js版本
参考博客:
https://juejin.cn/post/7094576504243224612
https://blog.csdn.net/l_ymttt/article/details/119598032
解决步骤参考:
1.先使用cmd 通过nvm install 下一个你所需要的版本
nvm install 16.18.0
2.使用nvm查看电脑中有node.js什么版本
nvm ls
3.后使用nvm切换node.js版本
nvm use 16.18.0
4.然后更新node_modules文件夹 且重新构建和编译项目
1.
更新依赖项
:运行以下命令更新项目的依赖项,以确保使用的是最新版本的 babel-loader 和 webpack:npm update2.
清除缓存
:运行以下命令清除 npm 缓存:npm cache clean --force3.
删除 node_modules 目录
:运行以下命令删除项目的 node_modules 目录:rm -r node_modules4.
重新安装依赖项
:运行以下命令重新安装项目的依赖项:npm i vue@3.2.37
5.最后重新运行项目即可
npm run serve
代码生成
1.代码生成,快捷编辑不生效(link=true没用)
原因:项目文件夹配置错误,路由表的路由不是快捷编辑路由
解决:切换路由表的路由为快捷编辑的路由
2.代码生成后,后端报文件以重复定义
原因:由于项目文件夹设置冲突文件相同
解决:删除已生成文件,重新设置代码生成文件夹,使文件不冲突
3.代码生成后,生成业务类库后无效,系统出现未找到请求地址提示
原因:生成业务类后,后端生成代码没编译,生成解决方案
解决:后端重新运行生成解决方案
4:代码生成icon设置无效
原因:代码版本问题导致,弹出框控制代码无效,需降低node.js代码版本
解决:框架版本问题
5.代码生成同一个模块放在同一个文件夹下(注意)
解决:新建
一个父目录文件夹
,然后所有子目录
的文件夹全部设置为
父目录文件夹
6.代码生成失效,点击显示不显示
原因:可能是代码生成bug
解决:前端:直接修改对应表vue源文件添加相应字段
后端:若是没有数据直接在后端实体类找到相应的字段有没有被忽略
还是不行直接看日志解决!
7.明细表代码生成不生效
原因:代码生成明细表关联的组表vue文件没更新
解决:主表重新代码生成后刷新即可
SQL
1.sql语句–条件列名无效
原因:查询视图列已被修改成别名
解决:使用别名即可
2.sql执行报–禁止对标识列的插入。
原因:sqlserver:向表中插入数据时,如果表中有标识列,SQL Server 通常会自动为标识列生成新的唯一值。
解决:SET IDENTITY_INSERT 表名 ON
允许插入标识列 或不管标识列,插入其余列即可
3.sql两表inner join后20变34条记录
原因:某一张表的数据重复了
解决:distinct或删除重复数据,不能处理就不关联用函数对那个要关联表的字段单独处理
ALTER FUNCTION f_get_VENDOR_LOTNO
(
-- Add the parameters for the function here
@lotno varchar(50)
)
RETURNS varchar(50)
AS
BEGIN
DECLARE @retValue VARCHAR(50);
select top 1 @retValue = VENDOR_LOTNO from [WMS_Production].dbo.WMS_BAR_DETAIL
where
--SOURCE_NO like '%ASN202208020009' and VENDOR_LOTNO = 'SD00899' and
LOT_NO = @lotno
return @retValue
END;
前端
1.vol登录后没有菜单?
原因:电脑缓存了另一个用户的用户名密码自动的登录
解决:使用超级管理员登录即可
2.vol菜单权限设置无用!
原因:同步的权限表数据只是数据库同步但代码没同步
解决:菜单权限保存一下还不行直接svn版本控制一下
3.控制台突然报错:Failed to execute ‘setAttribute’ on ‘Element’: ‘0’ is not a valid attribute name."
原因:添加了一句elementUi提示信息(this.$Message.error(rows);
) JavaScript DOM操作rows时 0 字符不能解析
解决:改成this.$Message.error(JSON.stringify(rows));即可!
4.{“status”:false,“code”:null,“message”:“方案名称没有配置好Model为编辑列”,“data”:null}
原因:代码生成没重新生成model和业务
解决:重新生成model和业务后重启后端
5.研发方案编辑 添加明细行保存后数据表有 但不显示
原因:明细表的与主表关联字段 明细表编号字段一样
解决:新建明细表编号字段
6.版本发布后且同步了菜单数据表数据但没有菜单权限
原因:数据表数据更新但是程序未更新
解决:重新保存菜单配置 即可设置权限
后端
1.控制台报using无法引用类包
原因:模块没有依赖
解决:双击控制台具体报错的地方,查看缺少什么依赖,后再该文件的依赖项中鼠标右击添加报错的依赖。
2.Swagger.ui一直没有打开成功,运行代码并提示服务器异常
原因:命令行窗口未关闭
解决:关闭命令行窗口重新启动webAPI
3.前端的重写的modelBody或box的表单,提交成功后,数据库没有保存成功?
可能原因:
1.后端的实体类的字段没有设置[Editable(true)]
2.添加的字段没有同步实体类,生成model,生成业务类
3.后端重写的方法 比如update传的参数里面没有那个字段
解决1:给响应字段设置[Editable(true)]
解决2:查看表提交请求,找到对应表代码生成,生成model生成业务类
解决3:添加缺少的字段
4.导出后报错提示directoryNotFoundException 文件目录找不到
原因:代码生成的中文名中加了"/"被识别为文件分割,导致找不到文件目录
解决:代码生成中改一下中文名 把/去掉就行了
如果不行就要修改导出程序
修改文件EPPlusHeaper.cs
将文件名的/
替换成空(string fullPath = savePath + fileName.Replace(“/”,“”))
public static string Export<T>(List<T> list, IEnumerable<string> exportColumns, IEnumerable<string> ignoreColumns, string savePath, string fileName, bool template = false,string tableName="sheet1")
{
...
//2020.06.02修复使用表别名时读取不到配置信息
List<CellOptions> cellOptions = GetExportColumnInfo(typeof(T).Name, template, columns: exportColumns?.ToArray());
string fullPath = savePath + fileName.Replace("/","");
...
}
public static string ExportGeneralExcel(
List<IDictionary<string, object>> rows,
string fileName,
string path = null,
Action<ExcelWorksheet, int, int, object> onFillCell = null,
Action<ExcelWorksheet> saveBefore = null)
{
path = path ?? $"Download/ExcelExport/{ DateTime.Now.ToString("yyyyyMMdd")}/";
string fullPath = path.MapPath();
fileName = Guid.NewGuid() + "_" + fileName.Replace("/","");
...
}
修改文件ServiceBase.cs
将文件名的/
替换成空(fileName = fileName.Replace(“/”, “”))
public virtual WebResponseContent Export(PageDataOptions pageData){
...
if (ExportColumns != null)
{
ExportColumnsArray = ExportColumns.GetExpressionToArray();
}
fileName = fileName.Replace("/", "");
...
}
5.前端负载有参数但是后端控制器为null
原因:前端请求为json对象,.net无法自动映射 就像java的requestBody一样
解决办法添加[FromBody]
[HttpPost, Route("updateTableHandleFlag"), AllowAnonymous]
public IActionResult updateTableHandleFlag([FromBody] SendModel sendModel)
{
var msg = Service.updateTableHandleFlag(sendModel);
return Content(msg.Serialize());
}