ngc项目需要注意的点
1、else做好处理,
this.$message.error((res.extras === null ? '' : res.extras) + (res.errors === null ? '' : res.errors))不适用于每一个函数中的else做处理
2、列表无数据必须做暂无数据处理
3、动态获取列表表头和信息在一个接口里面写
1)在el-table-clumn中做v-for循环数组,数组和tableData的数组在一个接口里面获取
4、做列表查询的时候,有select框的时候,例如:
注意!!!searchForm.deviceName是赋为获取列值表的第一个数据
//=============templete
<el-select
v-model="searchForm.deviceName"
placeholder="选择设备名称"
clearable
>
<el-option
v-for="item in deviceNameList"
:key="item.deviceName"
:label="item.deviceName"
:value="item.deviceName"
/>
</el-select>
//==============js
searchForm: {
deviceName: ''
},
deviceNameList: [],
getSelectData() {
this.$api.ngcConfiguration.queryDeviceList()
.then(res => {
if (res.statusCode === 200) {
if (res.data && res.data.length > 0) {
this.deviceNameList = res.data
this.searchForm.deviceName = res.data[0].deviceName // 返回的第一个值附上给deviceName
this.getRealTimeAlarmList()
} else {
this.deviceNameList = [] // 如果没有值,列表就为空
}
} else {
this.$message.error((res.extras === null ? '' : res.extras) + (res.errors === null ? '' : res.errors))
}
})
},
5、<el-table v-if="titleData.length>0" 如果加上这个if判断有数据就会显示没有数据页面就空了,去掉if判断之后没有数据,页面会显示暂无数据
6、align-content: center 起到的作用:
align-content: center; 是一个 CSS 属性,用于控制 flex 容器中的多行内容在交叉轴方向上的对齐方式。
具体作用如下:
-- 当 flex 容器中的多行内容的高度小于容器的高度时,align-content: center; 会使多行内容在交叉轴方向上居中对齐。
-- 当 flex 容器中的多行内容的高度大于容器的高度时,align-content: center; 会使整个多行内容在容器内居中对齐,会在多行内容上下分别留有相同的空白区域。
需要注意的是,align-content 属性仅在 flex 容器具有多行内容时才生效,而在单行内容时是无效的。另外,align-content 还有其他取值,如 flex-start、flex-end、space-between、space-around 等,可以根据需要选择不同的取值来调整多行内容的对齐方式。
7、在写布局的时候有页面存在echarts的时候,要做好布局echarts设置100%,不能写固定值,不然echarts会跳出框框。
8、写表格的时候,时间应该写个固定的宽度,超过宽度隐藏
遗留的问题:
1、svg图:绑点画图,以及怎么在页面上挂载上。
2、菜单权限
3、Signalr通讯需要注意的事项:
1)安装
npm install @microsoft/signalr
2)在页面中引用
const signalR = require('@microsoft/signalr')
3)在页面中使用
<script>
const signalR = require('@microsoft/signalr')
export default {
name: 'ScreenDisplay',
data() {
return {
isConnect: false, // 是否连接
serverData: [],
longLinkApi: 'http://xxxxxxxx:xxxx/xxxxxxxx',// 长链接实时接收数据
longLinkReceiveMsg: 'LargeScreenReceiveMessage',
longLinkSendingMsg: 'LargeScreenSendMessage',
connectionId: '', // 长链接id
}
},
beforeDestroy() {
this.isConnect = false // 页面销毁前断开连接
},
destroyed() {
this.connection.stop() //页面销毁让连接彻底断开
},
created() {
this.init(this.connection, this.longLinkApi, this.longLinkReceiveMsg, this.longLinkSendingMsg)
},
methods:{
this.init(this.connection, this.longLinkApi, this.longLinkReceiveMsg, this.longLinkSendingMsg)
}
// 方法
</script>