17分布式电商项目 - 模板管理功能(二)

简介: 17分布式电商项目 - 模板管理功能(二)

1. 扩展属性

1.增加行

在 typeTemplateController.js 中新增代码

//新增扩展属性行
$scope.addTableRow=function(){
  $scope.entity.customAttributeItems.push({});
}

在 type_template.html 中的“新建”按钮,执行实体的初始化操作

<button type="button" class="btn btn-default" title="新建" data-toggle="modal" data-target="#editModal" ng-click="entity={customAttributeItems:[]}">
  <i class="fa fa-file-o"></i>
 新建</button>

修改“新增扩展属性按钮”

<button type="button" class="btn btn-default" title="新增扩展属性" ng-click="addTableRow()">
  <i class="fa fa-file-o"></i> 新增扩展属性
 </button>

循环表格

<tr ng-repeat="pojo in entity.customAttributeItems">
<td><input class="form-control" ng-model="pojo.text" placeholder="属性名称" ></td>
<td>
<button type="button" class="btn btn-default" title="删除">        <i class="fa fa-trash-o"></i> 删除
</button> 
</td>
</tr>

2.删除行

实现思路:在每一行将索引值传递给集合,在集合中删除。

修改 typeTemplateController.js 新增以下代码

//删除扩展属性行
$scope.deleTableRow=function(index){
  $scope.entity.customAttributeItems.splice(index,1);//删除
}

修改每行的删除按钮

<button type="button" ng-click="deleTableRow($index)" class="btn btn-default" title=" 删除">
  <i class="fa fa-trash-o"></i> 删除
</button>

$index 用于获取 ng-repeat 指令循环中的索引。

2.新增模板

修改 type_template.html ,绑定文本框

<tr>
  <td>模板名称</td>
  <td><input ng-model="entity.name" class="form-control" placeholder="模板名称"> </td>
</tr>

保存按钮

<button class="btn btn-success" data-dismiss="modal" aria-hidden="true" ng-click="save()">
  保存
</button>

3.修改模板

修改 typeTemplateController.js 的 findOne 方法

//查询实体
$scope.findOne=function(id){
  typeTemplateService.findOne(id).success(
    function(response){
      $scope.entity= response;
      $scope.entity.brandIds=         JSON.parse($scope.entity.brandIds);//转换品牌列表
            $scope.entity.specIds=JSON.parse($scope.entity.specIds);//转换规格列表
            $scope.entity.customAttributeItems=JSON.parse($scope.entity.customAttributeItems);//转换扩展属性
    }
  );
}

从数据库中查询出来的是字符串,我们必须将其转换为 json 对象才能实现信息的回显。

4.删除模板

修改 type_template.html

表格中的复选框

<input type="checkbox" ng-click="updateSelection($event,entity.id)">

删除按钮

<button type="button" class="btn btn-default" title="删除" ng-click="dele()">
  <i class="fa fa-trash-o"></i> 删除
</button>



目录
相关文章
|
12月前
|
存储 负载均衡 算法
zk基础—4.zk实现分布式功能
本文详细介绍了基于 ZooKeeper(ZK)实现分布式系统中的多种核心功能,包括数据发布订阅、负载均衡、分布式命名服务、Master-Worker 协调、分布式通信、Master 选举、分布式锁及分布式队列与屏障的实现。每部分均包含原理说明和具体代码示例,展示了 ZK 在分布式环境下的协调能力与应用场景。
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
604 1
|
NoSQL Java 应用服务中间件
大厂面试必备:如何轻松实现分布式Session管理?
这篇文章介绍三种分布式Session的实现方案:基于JWT的Token、基于Tomcat的Redis和基于Spring的Redis。JWT方案通过生成Token存储用户信息,实现无状态、可扩展的会话管理,但可能增加请求负载且数据安全性较低。Tomcat与Redis结合,通过配置Tomcat和Redis,实现Session集中管理和高性能存储,但配置相对复杂。Spring整合Redis适用于SpringBoot和SpringCloud项目,集成方便,扩展性强,但同样依赖外部Redis服务。每种方法有其优缺点,适用场景不同。作者小米是一个技术爱好者,欢迎关注其微信公众号“软件求生”获取更多技术内容
1100 4
|
运维 监控 Linux
WGCLOUD运维平台的分布式计划任务功能介绍
WGCLOUD是一款免费开源的运维监控平台,支持主机与服务器性能监控,具备实时告警和自愈功能。本文重点介绍其计划任务功能模块,可统一管理Linux和Windows主机的定时任务。相比手动配置crontab或Windows任务计划,WGCLOUD提供直观界面,通过添加cron表达式、执行指令或脚本并选择主机,即可轻松完成任务设置,大幅提升多主机任务管理效率。
|
消息中间件 NoSQL Java
Redis系列学习文章分享---第六篇(Redis实战篇--Redis分布式锁+实现思路+误删问题+原子性+lua脚本+Redisson功能介绍+可重入锁+WatchDog机制+multiLock)
Redis系列学习文章分享---第六篇(Redis实战篇--Redis分布式锁+实现思路+误删问题+原子性+lua脚本+Redisson功能介绍+可重入锁+WatchDog机制+multiLock)
842 0
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
Spring Cloud Alibaba 发布了 Scheduling 任务调度模块 [#3732]提供了一套开源、轻量级、高可用的定时任务解决方案,帮助您快速开发微服务体系下的分布式定时任务。
16584 124
|
安全 开发工具 git
git分布式版本控制系统及在码云上创建项目并pull和push
通过本文的介绍,我们详细讲解了Git的基本概念和工作流程,并展示了如何在码云上创建项目及进行pull和push操作。Git作为一种分布式版本控制系统,为开发者提供了强大的工具来管理代码变更和协作开发。希望本文能帮助您更好地理解和使用Git及码云,提高开发效率和代码质量。
767 18
|
安全 开发工具 git
git分布式版本控制系统及在码云上创建项目并pull和push
通过本文的介绍,我们详细讲解了Git的基本概念和工作流程,并展示了如何在码云上创建项目及进行pull和push操作。Git作为一种分布式版本控制系统,为开发者提供了强大的工具来管理代码变更和协作开发。希望本文能帮助您更好地理解和使用Git及码云,提高开发效率和代码质量。
499 16
|
NoSQL Java Redis
面试官:项目中如何实现分布式锁?
面试官:项目中如何实现分布式锁?
699 7
面试官:项目中如何实现分布式锁?
|
开发工具 git 开发者
Git 作为最流行的分布式版本控制系统之一,为开发者提供了强大的功能和灵活的操作方式
本文深入介绍了 Git 中的 `git rebase` 操作,涵盖其基本概念、原理、与 `git merge` 的区别、具体操作步骤及应用场景,如保持提交历史整洁、解决合并冲突等,并讨论了其优缺点。强调在公共分支上谨慎使用 rebase,以避免潜在的风险。
414 6

热门文章

最新文章