00:00
接下来我们来编写获取购物车功能,当们来点击我的购物车,或者鼠标放在这这一块呢,会得到购物车的所有商品,当我们这一块的AJ我们先不写,我们先来点击购物车来在这展示购物车里边的所有数据,我们点击购物车呢,会发送cut.html请求,那最终来到我们这一块来处理这个请求,那用户信息呢,我们也不用在这获取了,因为我们是通过thread local放在整个县程里边,随时都可以获取,那么最终希望呢,就是我们的这个购物车服务cut service,它呢能有一个方法就叫get cut获取购物车,然后最终给我们得到购物车,而整个购物车对象我们也抽取过来了,就叫car,然后我们可以把这个购物车对象直接放到页面来进行展示就行了,好,来model model来点一个and attribute,那现在呢,就给页面放一个购物车对象,购物车里边的所有数据就在这,那么最后希望service直接有一个方法。
01:01
那这个方法呢,就是来获取购物车,来获取整个购物车,那我们这个整个购物车的功能来添加上它的实现,因为我们这个购物车呢,现在要区分我们是登录还是不登录状态,因为我如果我们不登录,我们会用零时价给它存一个购物车,登录了会以用户的ID存为一个购物车,所以我们在这儿购物车的获取操作,那么就要区分这个登录还是不登录状态,那么为了判断这个状态。我们直接可以通过这一句好拿到这一句,这一句呢,我们通过read local得到我们上一次我们拦截器为我们放的这个用户信息,那得到这个用户信息我们就来判断,如果我们这个user info点一个get user ID不等于空,那我们这个呢,就说明是登录了,来写一个不等于那那这个呢,就是登录状态,那登录状态的购物车我们先放在这儿,然后呢,接下来else,那就是没登录,那没登录好说来写一个没登录,那没登录呢,那就是查出他没登录的这个购物车就行了,主要用我们这个用户的这个来作为件,点一个get user key。
02:16
而且呢,我们不调这个方法来获取,我在这儿手动判断,我们现在呢,拿到这个user k,这是没登录的这个用户件,那我们整个购物车的内容,那就是我们最终来加上我们购物车的这个前缀,我们来看一下我们购物车的这个前缀叫cut prefix,好,我们来拿上这个前缀。那这个前缀呢,最终加上我们这个用户件,那就作为购物车的K卡特K如果没登录,我们就可以来获取购物车,我们使用red tempt点我们直接调用棒的方法,棒的哈希options,我们来操作这个的哈希,那我们这个获取购物车主要就是获取来我们这里边的所有购物车里边的所有商品,好我们拿过来,因为我们这个件呢,已经指定了购物车里边所有商品,那就在这儿,而且我在我们red里边,我们保存数据的时候,它本来就是有序的,所以我们直接可以来获取,我们拿到这个哈希options,我们直接调用它一个方法点一个,它呢有一个方法叫values,我们直接可以拿去所有的值,因为它是一个哈希K呢是商品的IDK呢,我们也不需要了,我们现在拿到所有的购物项,那这个所有的购物项我们可以给它便利来做一个封装,因为我们想要返回我们整个购物车,我们可以来new一个cut来看一下我们这个整个购物。
03:36
车里边所有的购物项,我们如果准备好了,我们只需要在这里边调用一个set it方法把所有的购物项放进去就行了。那么所有的购物项呢,我们现在是拿到,只不过拿到这些都是一个string类型的这个解锁数据,我们可以把它强制转换为这个类型,我们就叫string,好,我们来强制类型转换,这一块呢,转不了,那我们就可以不用转,我们拿到这一块,那我们接下来就来电力F,如果我们从购物车里边拿到这个数据,这是从red里边拿到的,如果它不等于空,然后呢,并且它里边呢,有数据点value6.1个,Size大于零,那我们就可以来做一个遍历,我们直接用for each点一个,或者我们使用stream API来进行编辑,点一个map们来映射,我们将每一个数据,每一个数据呢,那就是当前的对象,我们拿到这个对象,而这个对象呢,我们可以给他。
04:36
防制转换为string,然后最终我们每一个都返回成一个cut item,购物车的这一个项cutt item,因为我们拿到的这个购物车里边的这个值,那就是购物项,我们当时封装的,我们只要拿到以后,最终把它们收集起来,Collect,我们整一个to list,好,我们把它呢收集成一个list,最终把它们我们来放到我们的整个购物车里边,这是我们的购物车,然后呢,让购物车直接返回就行了,好,我们收集到以后点一个set itto,那这就是我们购物车的信息ittos,那就是这一堆,然后我们来直接返回我们整个购物车,那没登录直接把没登录里边购物车的所有数据拿到以后返回就行了,但这一块的数据由于我们拿到的这个对象,我们可以把它转为string,然后我们还要进行转换,String s tr,等于我们让obj来拿过来接收一下强制类型转换成。
05:36
String,而且呢,我们是JS,所以我们直接逆转过来就行了,Pass object把我们这个string点一个,我们把它呢直接转成我们这个cut item就行了,好,那们转成的这个item对象我们就来收集,把这个item拿过来,所以这是我们没登录的情况下,我们购物车呢,就在这儿能展示出来了,但如果我们这个登录状态下,那真登录状态呢,我们肯定用的是登录的购物车,那就是他,但是现在还有一个问题,假设呢,这个人刚登录他的临时购物车里边有数据,登录的购物车里边还有数据,所以他们还要进行一个合并,所以我们在这一块登录,虽然我们是要获取登录了的购物车的数据,好登录的话,我们购物车的件那就是用用户的ID,我们这一块封装了用户信息,里边封装了用户的ID,点一个get user ID,然后呢,我们把它作为键,我们来操作我们的购物车,好把这个购物车来拿过来。
06:34
这是我们登录后的购物车,但登录后的购物车我们可以来直接获取它的商品,但是我们再来获取所有商品之前,我们先得判断,如果还有临时购物车,如果临时购物车的数据还没有进行合并,因为按照我们这个京东,只要我们这个一登录,我们临时购物车里边呢,之前有数据,只要我们一登录,我们想要获取购物车里的这个数据,那购物车的数据就是把临时购物车的数据和我们以前保存的数据全部合并起来,而且呢,临时购物车还要清空掉,所以呢,我们现在就可以来做一件这个事情,如果我们这个临时购物车里边数据还没有进行合并,所以我们先来判断一下,怎么判断呢?我们点一个,我们先来判断我们这个临时购物车有没有数据,怎么判断临时购物车,那我们现在就拿过来这一块呢,是临时购物车,我们可以写一个方法,专门获取我们这个指定的购物车里边的数据。好我们现在呢,为了。
07:35
那经常获取购物车里边的数据来private来抽取一个方法my list,就将购物车里边所有的购物项cut item,我们来直接返回,我们就叫get cut it,然后呢,我们来传入,传入我们要获取哪个购物车,当然要传入购物车的这个键cut key,你传入过来,我们就来获取购物车里边的所有数据,维特纳购物车里边所有数据的获取就跟我们前面这一块的方法是一样的,我们直接来绑定操作,好我把这一块拿到,好把这一块拿到,我们现在呢,这是我们来绑定这个购物车件指定的我们这个购物车,然后呢,我们来获取它里边的所有购物项,把所有的购物项我们现在拿到,只要拿到以后呢,我们就直接来进行返回就行了,好,我在这儿来return一个我们的收集来的所有数据,否则我们就返回一个空,这是我们获取购物车里边的所有购物项,如果没登录,我们要返回给购物车的数据,我们调用我们的这个方法叫get。
08:35
Cut itto获取购物车里边的所有购物项,那就是调用我们这个方法得到我们这个购物项,然后呢,我们将购物车放进去,来们到购物项放进去以返回,这是我们获取临时购物车,获取临时购物车的所有购物项,然后呢,接下来我们如果是登录状态,登录状态呢,我们先不要去来获取登录状态的所有购物车的数据,我们先要判断我们临时购物车里边有没有数据,所以呢,我们在这个登录状态的情况下,我们还是调用我们这个get cut itto这个方法,然后呢,我们将临时购物车的件先传过来,来加一个我们从user info里边得到我们这个用户的临时件,我们现在呢,拿到临时购物车的这个数据,我们就叫team car ittos,然后呢,我们现在就得判断,如果临时购物车里边有数据,那么还要进行一个合并操作好。
09:35
啊,这个呢,拿过来来判断,如果说我们这个临时购物车PI cut itemsto不等于空,不等于空,说明我们这个临时购物车,临时购物车有数据,有数据需要合并,需要合并,那么呢,就可以给他进行一个合并,那这个合并操作其实就是将临时购物车里边的每一个商品,然后呢,重新添加到我们这个在线购物车里边,那现在呢,只要一登录,所以我现在直接可以调用我们service的and to cut方法就是呢,把它添加到购物车,因为如果我们现在此时调用这个方法,因为我们现在是登录进来了,那么肯定是将所有的商品添加到登录购物车的。
10:18
所以呢,我们现在拿到零时购物车里边的所有数据,挨个给登录购物车里边再填进去,而且填的时候他还会判断,如果有就填数量,如果没有再去来进行一个详细查询,所以我们这个tip cut itto,我们来给它做一个便利,直接来for each,我们来写一个增强for,那现在将临时购物车里边的所有购物项我们获取来,然后呢,我们将它们全部填到我们这个在线购物车里边,我只只需要调用and to cut方法,要填哪个商品,那就是我们拿到商品的ID,包括呢,要添几个,把零时购物车里边的东西啊,这是它的数量来填进去,那这个按to cut方法我们呢,会有异常,所以我们把这个异常该抛了抛出去,这就是我们在这儿合并了购物车。
11:08
这是我们关键的这一步,合并购物车,那合并完了购物车,我们相当于登录后的购物车和我们这个临时购物车全部合并了以后,我们再来获取我们这个登录后的购物车,那再来获取这个登录后的购物车的数据,那怎么获取呢?这是我们这个登录后的购物车的件,我们想要获取,调用我们抽取的方法,Get cut itto,把这个购物车的件传过来,这就是我们登录后的所有购物车的数据,但这个数据包含我们合并来的临时购物车,包含合并过来的的临时购物车的数据和我们现在登录后的购物车的数据,所以我们把这个数据放到我们的整个购物车里边,把整个购物车再给他返回,而且返给我们页面,返回整个购物车的话,我们页面。如果想要获取其。
12:08
它的值我们还会做一个动态计算好,整个购物车对象,我们就在这儿封装好了,主要就是要区别登录还是没登录,如果登录了,我们就在这儿合并,把临时购物车里边的所有数据拿过来,然后呢一一填到我们登录后的购物车,而且我们可以直接调用这个方法,因为调用这个方法呢,我们当前登录状态,我们给购物车里边填,我们会判断成功,我们是登录状态的,所以我们用的肯定都是登录状态的购物车信息,所以我们这个方法呢,它就会自动的给我们登录后的购物车里边进行添加,如果没登录,我们就无需合并,只需要获取到临时购物车的数据。好,那么这个get看的方法我就写好了,我们把购物车里边的所有商品,我们获取来返回我们整个购物车对象,把整个购物车对象放到了页面,然后我们来cut list页面,那这个list页面我们可以先来在这儿判断一下我们这个登录状态,我们让它回显一下这个登录状态的这个回显,我们在其他的这个商品页,我们之前都做过。
13:08
那我们就直接可以拿过来,无论是商品页还是我们检索页,我随便来拿一个,把这个Li我复制一下,我来复制上三个,这一块呢,还有一个免费注册的这个链接,我都复制来CTRLC,然后来到我们这个购物车页,把我们这个免费注册这两个链接们来替换一下CTRLV,这是我们购物车的这一块,包括我们这个购物车里边的这个成功页这一块的我们的这个登录状态,我们也给它取一下,好,我们把这个登录免费注册这两个LM它干掉,走,我想好以后呢,我们来重新启动一下我们的整个购物车项目,们现在来看一下我们最终的效果,那们现在看一下我们现在我们现在状态呢是登录了,但是此时呢,我们这个里边临时购物车的数据也有,登录的购物车数据也有,那如果我们想要获取购物车,那我们就会将临时购物车的数据跟登录购物车的数据进行合并,那我们现在来看一下我们的这个效果,先来看我们的购物车服务启动好这一块呢,启动完成,我们在这儿来点击获。
14:08
就我们的购物车列表数据,我来点击获取页面呢,我们虽然没有展示,没启动文件,我们先来确认一下,我们这个用户呢,登录后的购物车只有457没登陆呢,是二七,那他们的状态都是多少?来截一个图,好457他们的商品数量分别是这么多,我们来给这一块呢截一个图来记录一下,然后这个是我们这个登录了的,然后没登录的,我们在下边临时的是二期数量这么多,那完了以后呢,我们就要进行合并,只要我们一查看购物车,我们购物车呢,会将这两个合并,相当于七号商品就会成了27个,而我们登录后呢,还会多一个二号商品,来看一下我们最终的效果,我们来刷新,好我们这个购物车列表呢,在这儿展示出来了,但是我们在这儿呢,没有便利显示,当然我们来看一下这一块,我们登陆后的这个购物车,我们来双击,现在呢,我们发现2457全部合并进来,而且呢七号二。
15:08
这七个没什么问题,而我们这个临时购物车一旦被合并以后,它里边的数据还要进行清空,所以呢,我们可以在这儿,然后接下来我们再来写一个逻辑来获取购物车,只要我们在这儿合并了,我们在这儿全部合并完成,我们要清除,清除临时购物车的数据,而且呢,我们这个清空购物车我们经常要做,所以呢,我们专门来再来提取一个方法,我们这个方法呢,我来写成一个public,我们就叫word,我们就叫clear cut,我们来清空购物车,那清空哪个购物车,你给我传一个购物车的件,我们来进行清空卡特P,当然我们这个呢,应该写成一个接口,我们在接口上都来声明上这个方法,好们来在接口位置来声明一个购物车的清空方法,就是它,它的作用呢,就是清空购物车,清空。
16:04
我们的购物车数据,那如何清空,我们这个方法的实现也都有,我们直接来到它的这个实现crl out点进来,这是我们的实现,来标上这个overri注解,好,我们这一块的实现呢,我们想要清空购物车,我们先拿到购物车使用red timelet棒的我们这个has西options,我们的哈希操作,把这个购物车整个拿过来,拿过来以后呢,们想要清空,好,那这个清空呢,我们直接调用它的清除方法,这一块有一个delete,我们可以指定所有的价来进行清空,但这样呢太麻烦了,我们看能不能有一个快速的清除所有,诶我们发现这一块呢,没有,那没有的话呢,我们这个清空购物车那就简单多了,我们也不需要这个绑定操作了,直接将我们这个购物车一删就行了,所以我们使用red tempt点一个delete,把我们这个件一删,那么这个购物车呢,就清空了,好,我们这个件相当于在这我们直接来给它删掉走,那这个购物车数。
17:05
句呢,就类似于没有了,来reload一下,所以这是我们的购物车清空场所,完了以后呢,我们要清空购物车,来在这要清空哪个购物车,那现在调用clear cut方法来清空,这个呢,是登录的购物车,要清空我们的临时购物车,把临时购物车的件拿过来,好来拿一个string,这是一个tip cut key,这是我们这个临时购物车的件,这个临时购物车的件我们直接拿过来,我们先来获取临时购物车里边的所有数据,然后我们来给它合并,合并完了以后呢,再把临时购物车一清空。这是我们的这一块操作,好,我现在重新来启动我们临时购物车呢,我们已经自己清空了,那现在我们把我们的登录状态一退出,我们来重新演示一遍,好,现在把我们整个退出,我们访问我们的鼓励商城,我们现在呢,没有登录鼓励welcome走,我们虽然没有登录,但是呢,我们以前给我们分配过一个临时用户,这个临时用户我们看到它的过期时间是一个月,所以这一个月呢。
18:11
这个临时用户的key一直在,然后呢,我们先来给购物车里边添加上一些商品,走,我来,比如我来添一个这个iPhone,好,它呢是11号商品,我来添加上两个,我来点加入购物车,那只要购物车加入成功,我们肯定是加入到零食里边来刷新一下,来看一下我们的购物车,咱我们这个临时购物车里边好有两个iPhone没问题,这就是我们的这个苹果手机填进来了,那接下来只要我们一登录,那现在呢,没登录,我们这儿有个你好,请登录,那这一块的样式我们顺便也来改一下,在and to cut success页面模拟,好,请登录,原来呢,人家的这个Li,人家都会有这个分割,我们这一块呢,没分割,我们可以直接给这一块叫请登录,好,我们给它提示一个这个,然后呢,我们来指定上一个宽度,比如我们来死掉wide来写一个150PXCTRLF9来看一下页面效果,现在是我们这个购物车添加成功的这一块页面,好我来直接来刷新,好请登录,这没问题。
19:11
这个宽度呢,可能稍微有点多,那么直接把这个宽度去掉,请登录,三个字呢不长,我们就放在这儿,好,我们来刷新一下。好,请登录,这有免费注册啊两个,那现在没登录呢,我们先添加的是在我们的这个购物车,然后当会我们来点击登录,我们跳转到我们的登录样,好我们现在使用社交登录,直接呢会跳回来,好们这个社交登录呢,我们重新登一下,那现在呢,只要登录成功,我们跳回来,那跳回来以后,接下来我们再来看我们的这个购物车,首先跳回来,我们没获取购物车的情况下,临时购物车,在线购物车都有数据,只要我们掉了获取购物车的方法来点击,好我们这个购物车呢,只要一获取我们在这来刷新一下,或者我们直接来获取一下这个临时数据,我们点一下发现呢,它提示我们已经不存在了,所以呢,我们就合并过来了,我们来看一下合并后的购物车里边呢,又多了一个五号的iPhone这个商品,那么这个操作呢,我们就做完了,接下来我们把页面呢,直接给它一展示就行了,我们来到购物车的列表页面,我们所有的购物车的数据我们在这儿来进行展示,这一块呢,我们发现诶这直接。
20:21
还有一个我们展示的这个TH相关的语法,我们直接呢把这个Li删掉,我们自己来遍历,因为购物车里边的每一个数据我在这注释掉了,我们把这个注释去掉,好,我们把这个注释去掉,CTRLL来代码整理一下,我们购物车里边每一项数据都是这么一个lii,就是这么一个Li来CTRLF9,大家看一下我们的页面效果,好,我来刷新好,我们这呢,就是我们购物车的一项数据,然后接下来我们就要有多少个数据,我们就要来进行一个展示操作,当然在做所有展示之前,我们这个购物车这一块呢,应该判断我们购物车里边有数据在展示,没有,那么也无需展示,所以我们在这一块呢,整个ul这一块的展示,我们可以来判断一下th if,如果我们这个Dollar大括号,我们给页面呢放了一个cut cut里边所有的购物车是it,如果it不等于,那说明我们。
21:21
购车里边的数据不为空写才展示,如果为空,那就直接给一个大标题,好,我们就写一个th if。TF,我们购物车里边的数据为空,它等等那等等那呢,我们就来提示购物车还没商品,购物车还没有还我们这个没有商品,没有商品我们点一个去购物,去购物好我们这个购物呢,就是一个超链接,我们把这个超链接好放在这个里边。我来点击这个超链接,你就来去购物,超链接呢,当然就是我们的首页HTTP冒号,我们的鼓励mail商城点com,然后我们购物车里边有数据,我们就来遍利这个,所以我们Li有多少个是TH来进行遍历,遍利谁那当然就是遍利我们Dollar大括号,我们的cut.it好便利,我们的这个购物车里边的所有购物项,然后呢,每一项就是我们当前便利的一个信息,然后我们在这个信息里边。
22:31
首先第一个我们当前项的这个勾选状态,这个状态选没选中,我们在这儿呢,得有一个判断,Th if,如果我们当前的这个购物项。Dollar福大括号来这个勾物像它呢专门有一个状态叫check,如果这个check是true的,我们呢就让它选中,否则就不选中,所以我们可以使用它的这个属性th check,我们每一个选择框有一个属性叫checked,到底选不选中是按照它的true false来进行的,好,这是第一个,然后接下来第二个我们购物像的这个商品的图片信息,这个图片信息我们就直接来THRSRC我们直接取出来就行了,它的这个图片呢,那就是Dollar福大括号当前正在便历的这个购物像,我们专门封装了图片,图片地址我在这也没问题,然后接下来就是下边,下边的第一个span是我们这个购物项的我们这个商品名称,下边呢,还有我们这个选择了什么套餐信息,那这个人工智能什么曲面,我们来看一下这个人工智能,好,那下边这个呢,那就是套餐,那在这儿呢,除了展示商品名字,还有它的这个尺码尺。
23:45
按,那这是套餐,好,那接下来呢,我们就把这一块拿来,这个P呢,我们也不用了商品的标题,标题在这我们使用th test的方式,这个标题呢,我们直接Dollar幅大括号拿到我们当前这一项,当前这个购物项的标题,这就是抬头啊,然后呢,包括它的这一块信息,勾物项里边到底有多少我们这个属性,我们可以直接TH,我们来进行一个便历TH,因为我们这个每一个购物项里边,我们还封装了它的这个套餐信息是cell at tr,这个cell at tr呢是一个list,所以我们来遍历它每遍历出来的一个at tr,我们就把它的值放到我们这个SPA里边们th test,我们建遍历出了这个at tr,这就是一个string,直接在这进行显示,所以呢,我们这个套餐有多少个,我们来便利多少个,然后这一块呢是价格,那么接下来就来写th test,那么这个价格。
24:45
那我们就直接Dollar福大客号,我还使用item itemm里边的我们商品的价格就在这,而且我们这个价格我们也要进行格式化展示,我们之前呢,在我们的这个商品详情页,我们有格式化过我们这个价格内容,我们把这个价格我们拿来给大家看一下,我们当时在详情页格式化价格的时候,来往下翻,我们来找一下它的这个price,直接来搜一下它的这个price,好,格式化价格直接使用它的这个numbers方法,我们要格式化的数据,我们小数点后保留两位。
25:19
好,我们直接可以复制过来,把这一块呢复制过来CTRLC,我们来到我们购物车里一块,这一块呢,展示价格,我们就用格式化的数据,当然要格式化的是我们这一块叫item,点一个price,这是我们的价格,当然整个价格呢,我们还得拼接上我们的这个字符串,就是什么呢?我们的这个金钱的这个字符,好我们来拼上它,包括我们这个商品呢,还有多少个数量,我们这个数量的数字中间的这个数字,这个数字呢,我们要遍历出来TH,诶不是遍历要取出来th test,它这个数字我们在当前这一项里边也有item,点一个count,好,这是它的这个数字,包括我们的这个总价这一块的这个总价内容,好,我们把这个总价内容,我们可以直接双中括号来取,在这写行内写法也行,到大括号,当然我们还要格式化,使用numbers form来进行格式化,当然我们这个总价呢。
26:19
我们item里边每一个购物项,我们来可以给他大家看一下,我们购物车里边封装的每一个购物项,我们在这一块呢,显示的是当前购物项的总价,所以购物项里边有一个total price,把它拿过来,你在这一展示就行了,就是item的total price,好,我们购物车里边的这些信息就便定完了,这是我们的购物项信息,那整个便定完以后,我们还有购物车的总价,我们看到购物车呢,这儿还有一个总价,相当于我们在下边这有一个总价,那么把这个总价呢也拿回来。在这一块的值我们也拿过来双中括号来刀了符大括号,然后我们将我们的格式化这一块的内容,好我们将价格的格式化,只要我们使用价格,我们都要使用这个格式化的这个数字,好把这个数字拿过来,CTRLC,我们价格呢在这来进行展示,而我们现在呢,这一块的价格大家注意,现在呢,不是购物车里边购物项的总价了,我们这一块呢,是要展示的是整个购物车的总价,我们整个购物车呢,我们现在是我们给页面放了一个cut,这是我们整个购物车,整个购物车这个cut对象里边总价呢,有一个叫total amount,这是它的总价,好我们把这个总价呢放在这,包括我们总价下边,我们还可以展示我们优惠了多少,这是总价信息,那我们把它这个总价,我们再来写一个Li,我们写一个优惠多少,总计我们优惠了多少啊Li我们优惠了多少,我们现。
27:51
那优惠呢,我们虽然没写,但是它的真正要取值,那就是双中括号Dollar福大括号,那现在呢,整个优惠我们还是numbers,我们取出来购物车我们给你优惠了多少的价格,好,这个井号不用do福大客号,我们购物车里边呢,专门封装了一个叫优惠价,我们来看一下购物车优惠价呢,就是这个reduce,我们来给你减了多少价。
28:15
我们在这来进行一个展示,好CTRLF9,我们将所有的页面呢展示我们都写完了,然后我们在这来做一个测试。而且我们现在是登陆状态,我们来刷新一下,诶我们发现我们这一块呢,全部展示过来了,我们有多少件商品,包括我们这一块的价格,总价优惠了多少,而且大家注意,那这块优惠呢,我们显示了三个零,三个零的原因那就在这儿,因为我们在这格式化的时候,三就代表我们整数位最少有几位,如果不够用零补齐,我们最少呢有一位,我们CTRLF9,这样我们就可以了,们来刷新一下,好,我们来刷新,我们现在呢,这一块优惠总价都有了,只不过呢,我们商品标题有点长,导致我们这一块呢移出了,那么可以来改一下这一块的样式,来找一下我们商品标题的这个便利,我们这个商品们现在便利每一个购物车的商品啊,标题在这,这个整个标题呢,他们都是在这个DD这边,我们可以来审查元素,来看一下这个审查元素呢,整个标题这块都是DD,如果我们给这个DD给一个宽度应该就没问题了,我们可以来试一下,比如我们在这外。
29:25
子来给一个宽度来让它等于300PX走,那么这个标题呢,就能正常的显示在这了,好,那么就来做一件这个事情,来给DD给一个style y等于300PX来指定好,并且呢,我们让标题跟我们的这个套餐属性信息来,中间都有一个BRCTRLF9,我们来看一下我们页面的效果,好,我来刷新页面,那最终呢,这个就是我们这个页面,我们当前里边的所有商品,星河营八加256,还有亮黑色什么八加128这个我们这块呢都有,包括他们的选中状态在这儿呢也是有的,因为只要我们一选中我们便利的这个check就会有东西,如果我们没选中,比如我们在购物车里边随便改一个状态,我们将它呢改为false好。
30:15
我们来点击保存,来看一下我们这一块会不会记录状态来刷新一下,我们有一个没选中,诶发现这一块呢,确实没选中,那这都没问题,我们把这一块页面呢,也重新展示一下,如果我们登录了就不用显示这个,没登录才显示这个,我们来找一下这个立即登录,立即登录。这个立即登录按钮,那在这整个这一块的div,我们要判断th if,如果我们这个没登录,我们才来显示,这没登录呢,我们直接从session里边点它有一个login user等等,那好这个呢就代表没登录,那没登录呢,我们就显示这一块,而且如果我们来点击登录,它会来调这个login方法,这个login呢,我们来看一下,我们想要登录,我们就要跳到一个地方,我们跳到我们的登录页,这个登录页呢,我们直接来写上我们去这一块就行了,好,我把这一块去掉,来登录页呢,直接去写上,我们来是author,点一个鼓励ma.com下边的们log.htm controltrl f9现在来看一下我们的页面效果,我们来刷新一下,我们现在是登录状态,我来刷新啊,这一块呢就没有了,没问题,这是我们购物车里边所有的商品,那下一节课就来编写购物车里边其他商品的一些操作功能。
我来说两句