亚洲十八**毛片_亚洲综合影院_五月天精品一区二区三区_久久久噜噜噜久久中文字幕色伊伊 _欧美岛国在线观看_久久国产精品毛片_欧美va在线观看_成人黄网大全在线观看_日韩精品一区二区三区中文_亚洲一二三四区不卡

COMP 315代做、代寫(xiě)Java/c++編程語(yǔ)言

時(shí)間:2024-05-02  來(lái)源:  作者: 我要糾錯(cuò)



Assignment 2: Typescript and React
COMP 315: Cloud Computing for E-Commerce
April 27, 2024
1 Introduction
A reactive website will scale and reorder elements to suit the screen size of the device being used to access it. A
dynamic website will update the elements of the page without the need for a full reload. In this assignment you
will expand upon a skeleton program in order to build a dynamic and reactive e-commerce front end website.
2 Learning outcomes
By the end of this assignment, you will:
• Be able to implement functions using Typescript.
• Be familiar with how to use React components and hooks.
• Have a template website that you could expand upon for a portfolio piece.
3 Problem description
For this task, you have been provided with a skeleton website, as well as the assets to populate it with. At
the moment the site displays the: name, picture, rating, and price of a collection of items for sale. If you type
into the search bar, it will only display items that have your search term within their name. You must add the
following functionality:
• An indicator showing the number of search results or products available.
• Sorting the items by: name, price, or rating.
• The ability to show only in stock items in the search results.
• Adding or removing items from the shopping basket.
• A total cost of products in the shopping basket.
4 Initial setup
The skeleton code has been provided for you, which is a basic e-commerce website similar to the one shown in
lectures. Ensure that you have Node.js installed on your computer, this should come with V ite. Download
the zip file of this code and extract it to a suitable place on your computer. Navigate to that folder in your
terminal, and type npm install. Once this installation has completed, type in npm run dev, which should host
the website locally for you. Take the localhost address shown in the output and type it into your browser to
see the website. There are 4 JSON files included in the ’Assets’ folder, which are random products 1, 100, 150,
and 175. Each of these JSON files contains a list of products to be shown on the website. Each product has
the attributes outlined in Table 1, with the images being generated using Adobe Firefly.
1
Attribute name Note
ID This is a unique identifier for each product, and is an integer
name The name for each product.
price The price of the product in pounds.
category This is the general category of the product.
quantity The number of this product that is currently available in stock. This is a non-negative
integer.
rating This is a real number rating of the product between 0 and 5.
image link The file location of the promotional image.
Table 1: The attributes that are stored for each product
5 Developing the website
5.1 The results indicator
When searching for products, it is often useful to know exactly how many products the current search has
returned. This can help make the website feel more reactive. In the results − indicator paragraph tag, add
a notification about how many results or products the current search query has returned. If the search bar
is empty, then the the output should be nP roducts where n is the number of products. If there is only a
single product then the output should be 1P roduct. If the search bar is not empty, then the output should be
nResults where n is the number of products returned by the search query. If there is only a single product
returned by the query, then it should say 1Result. If there are no results returned by a query then the output
should be Nosearchresultsfound.
5.2 Enhance search functionality
When looking at a list of products, a useful feature is being able to sort them by some attribute such as price
or rating. Add functionality to the select tag inside of the search − bar, so changing the selected option will
result in that form of sorting being applied to the results. Once this task has been completed, add the following
functionality to the inStock checkbox input. When this checkbox is ticked, the results should only include
products that have a quantity larger than 0. Hint: this can be accomplished by using a combination of a state
and a hook.
5.3 Adding to the shopping basket
Each product currently has a button underneath that says ’Add to basket’. Update this code so that if the
quantity available of the product is 0, the button instead says ’Out of stock’ and is disabled. Add a function
to the ’Add to basket’ button that passes the information to a shopping basket variable in App.tsx. This
variable should be a list of type BasketItem. Adding multiple instances of the same product should increase
the quantity property of the relevant basket instance. Do not worry about disabling the product’s button if
the quantity added to the basket is more than the quantity available. Hint: The parent/child example given in
Tutorial 4 - question 7 can give you a good starting point.
5.4 Visualising the basket
Now that the data about the basket is being collected, we should visualise it for the user. If there are no items
in the basket then the shopping − area div should contain a paragraph text saying ’Your basket is empty’. If
the shopping basket variable contains a product, then the shopping −area div should contain that information.
Each item in the basket should be surrounded by a div with the class ’shopping-row’, and a suitable key such as
the name of the item. Inside of that div there should be another div with the class ’shopping-information’, and
a button with ’Remove’ text. The ’shopping-information’ div should contain a paragraph tag which shows the
information about the product in the format [P roductname]([P roductprice]) − [P roductquantity]. When the
’Remove’ button is pressed, then the quantity of that product in the basket should be reduced by 1. If pressing
that button reduces the quantity of the product to 0, then that item should be removed from the shopping
basket. At the bottom of the shopping −area div should be a paragraph tag with the total cost of the shopping
basket. This should be in the form of T otal : [T otalbasketcost]. This value should be shown to 2 decimal places.
2
6 Marking
Your completed assignment will be submitted through the Canvas submission system. This will account for
10% of your overall module score. You may use any library that comes with a default installation of Node.js.
Each variable should have the appropriate type, if the ’any’ type is required than a comment must be included
that justifies it’s use. This rule is in place to encourage the use of Typescript type checking instead of just
Javascript. Your work will be submitted to an automatic plagiarism/collusion detection system, and those exceeding a threshold will be reported to the Academic Integrity Officer for investigation regarding adhesion to the
university’s policy https://www.liverpool.ac.uk/media/livacuk/tqsd/code-of-practice-on-assessment/appendix
L cop assess.pdf.
7 Deadline
The deadline is 23:59 GMT Sunday the 12th of May 2024. Late submissions will have the typical
5% penalty applied for each day late, up to 5 days. Submissions after this time will not be marked. https:
//www.liverpool.ac.uk/aqsd/academic-codes-of-practice/code-of-practice-on-assessment/
8 Expansions for a portfolio piece
If you decided to expand upon this short example in order to create a portfolio piece, which I stress is not
something you have to do for the assignment, then you will need to make several changes. My suggestion for
these changes would be:
• Redesign the site to be more visually appealing, focus on the reactivity and showing off that it works on
all form factors of device.
• Use Next.js to add individual pages for each product. This will also mean that you’ll have to look into
how to allow the user to return to the search results.
• Connect to a database, such as Neo4j, as this is crucial in showing you understand role of the front end

.請(qǐng)加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp


















 

標(biāo)簽:

掃一掃在手機(jī)打開(kāi)當(dāng)前頁(yè)
  • 上一篇:代寫(xiě)COM6511、代做Python設(shè)計(jì)程序
  • 下一篇:代寫(xiě)program、代做c/c++,Python語(yǔ)言編程
  • 無(wú)相關(guān)信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲(chóng)
    油炸竹蟲(chóng)
    酸筍煮魚(yú)(雞)
    酸筍煮魚(yú)(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚(yú)
    香茅草烤魚(yú)
    檸檬烤魚(yú)
    檸檬烤魚(yú)
    昆明西山國(guó)家級(jí)風(fēng)景名勝區(qū)
    昆明西山國(guó)家級(jí)風(fēng)景名勝區(qū)
    昆明旅游索道攻略
    昆明旅游索道攻略
  • 短信驗(yàn)證碼平臺(tái) 理財(cái) WPS下載

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網(wǎng) 版權(quán)所有
    ICP備06013414號(hào)-3 公安備 42010502001045

    不卡在线视频中文字幕| 精品国产精品三级精品av网址| 欧美人xxxx| 网友自拍视频在线| 911亚洲精品| 韩国精品在线观看 | 55av亚洲| 亚洲欧美色图| 国产精品电影一区二区三区| 精品国偷自产国产一区| 亚洲欧美se| 亚洲午夜精品久久久久久app| 国产精品网站一区| 在线免费观看av网站| 亚洲五码在线| 成人免费看视频| 欧美成人国产一区二区| 韩国美女久久| 日日摸夜夜添夜夜添国产精品| 亚洲午夜羞羞片| 国产精品一区二区婷婷| 久久99国内| 欧美高清在线视频| 天堂а√在线8种子蜜桃视频| 国产精品白丝一区二区三区| k8久久久一区二区三区| 欧美18—20岁hd第一次| 久久久久久爱| 91小视频免费观看| 超碰在线中文| 国产精品手机在线播放| 亚洲欧美怡红院| 一广人看www在线观看免费视频| 欧美高清视频在线观看mv| 日韩码欧中文字| 欧美激情免费| 99精品国产福利在线观看免费| 色偷偷88欧美精品久久久| 国产伦理精品| 久久久精品日韩| 日韩欧美国产综合| 欧美影院视频| 中文字幕va一区二区三区| 国产永久免费高清在线观看视频| 日韩综合在线| 日韩欧美999| 亚洲成人激情社区| 成人av先锋影音| 台湾av在线二三区观看| 欧美精品二区| 538在线一区二区精品国产| 在线播放成人| 国产精品五月天| av网站导航在线观看免费| 日韩成人精品在线| 老司机午夜激情| 久久人人99| 在线视频一区二区免费| 亚洲成人高清| 国产精品国产精品国产专区不片| www.久久ai| 国产自产2019最新不卡| 中文字幕网站视频在线| 激情欧美日韩一区| 精品国产乱码久久久久久老虎| 思热99re视热频这里只精品| 亚洲午夜免费视频| 成人av色网站| 国产精品久久久久久久裸模| 欧美hdxxxx| 成人av影院在线| 黄色在线免费| 国产不卡免费视频| 网友自拍视频在线| 国内精品国产三级国产a久久| 午夜在线网站| 日韩电影一区二区三区四区| 国产精品㊣新片速递bt| 99精品国产在热久久婷婷| 色偷偷亚洲第一综合| 中国精品18videos性欧美| 日韩欧美你懂的| 久久久久久久久国产一区| 欧美一区二区久久| 日韩毛片视频| 欧美成人三级电影在线| 中文字幕一区二区三区在线视频 | 欧美人体一区二区三区| 国产网站一区二区| 欧美日韩精品免费观看视完整| 中文字幕精品一区二区精品绿巨人| av老司机免费在线| 欧美国产日本视频| 另类中文字幕国产精品| 亚洲精品免费在线观看| 成人亚洲精品| 欧美日韩一区二区免费在线观看| 亚洲国产高清在线观看| 欧美天堂在线观看| 久久不见久久见中文字幕免费| 717成人午夜免费福利电影| 欧美成人自拍| 亚洲精品666| 久久成人羞羞网站| 在线观看av免费| 国产欧美一区二区三区网站 | 91丨精品丨国产| 精品久久久久久中文字幕大豆网| 日韩大片在线免费观看| 欧美一区二区精美| 国产视频久久| 91免费在线| 国产欧美日产一区| 日本免费精品| 日韩小视频在线观看专区| 亚洲激情午夜| av免费在线一区二区三区| 福利一区在线观看| 成人国产激情| 欧美伊人久久久久久午夜久久久久| 97精品视频| 久久这里精品| 国产无遮挡一区二区三区毛片日本| 国产一区二区三区黄网站| 4438x亚洲最大成人网| 国产人成精品一区二区三| 日本三级在线视频| 亚洲欧洲制服丝袜| 久久99国产精品视频| jizzjizz亚洲中国少妇| 成人黄页在线观看| 成年永久一区二区三区免费视频| 欧美高清视频一二三区| 日韩精品一区第一页| 99在线视频影院| 色综合视频在线观看| 亚洲高清激情| 久草在线视频福利| 欧美视频一区二区三区…| 欧美精品国产一区| 免费日本一区二区三区视频| 亚洲精品免费在线观看| 夜间精品视频| 免费在线观看av| 欧美日韩国产一区中文午夜| 狠狠色狠狠色综合日日tαg| 97超碰资源站在线观看| 欧美日韩国产页| 麻豆精品网站| 欧美成人a交片免费看| 在线不卡的av| 国模一区二区三区白浆| 国产精品亚洲综合在线观看 | 欧美一区二区大片| 国产一区二区中文字幕| a一区二区三区亚洲| 精品国产一区二区在线观看| 成人午夜私人影院| 先锋影音国产精品| yjizz视频网站在线播放| 亚洲在线观看免费视频| 一本久久综合| 日韩欧美一区二区三区免费观看| 日韩欧美美女一区二区三区| av一区二区三区四区| 久久不见久久见中文字幕免费| www 日韩| 在线观看亚洲精品视频| 狠狠色2019综合网| 精品国产导航| av在线免费一区| 亚洲成年人网站在线观看| 一区二区三区精品视频在线观看 | 爱福利在线视频| 欧美一级视频精品观看| 91丝袜高跟美女视频| 亚欧美无遮挡hd高清在线视频| 麻豆福利在线观看| 麻豆美女网站| 亚洲青青青在线视频| 老**午夜毛片一区二区三区| 欧美视频精品全部免费观看| 青青操在线视频| 欧美在线观看视频一区二区三区| 粉嫩av一区二区三区| 日韩dvd碟片| 伊人久久综合一区二区| 日日噜噜噜夜夜爽爽狠狠| 亚洲国产另类精品专区| 精品一区二区影视| 日韩电影二区| 嫩草伊人久久精品少妇av杨幂| 成人在线观看视频app| 欧美日韩一二三四五区| 99视频精品免费视频| 欧美片第1页综合| 欧美日韩午夜电影网| 国产乱色在线观看| 999大胆视频| 日韩欧美在线播放|