React后端管理系统-商品详情detail组件
- import React from 'react';
- import MUtil from 'util/mm.jsx'
- import Product from 'service/product-service.jsx'
- import PageTitle from 'component/page-title/index.jsx';
- import CategorySelector from './category-selector.jsx';
- import './save.scss';
- const _mm = new MUtil();
- const _product = new Product();
- class ProductDetail extends React.Component{
- constructor(props){
- super(props);
- this.state = {
- id : this.props.match.params.pid,
- name : '',
- subtitle : '',
- categoryId : 0,
- parentCategoryId : 0,
- subImages : [],
- price : '',
- stock : '',
- detail : '',
- status : 1 //商品状态1为在售
- }
- }
- componentDidMount(){
- this.loadProduct();
- }
- // 加载商品详情
- loadProduct(){
- // 有id的时候,表示是编辑功能,需要表单回填
- if(this.state.id){
- _product.getProduct(this.state.id).then((res) => {
- let images = res.subImages.split(',');
- res.subImages = images.map((imgUri) => {
- return {
- uri: imgUri,
- url: res.imageHost + imgUri
- }
- });
- this.setState(res);
- }, (errMsg) => {
- _mm.errorTips(errMsg);
- });
- }
- }
- render(){
- return (
- <div id="page-wrapper">
- <PageTitle title="添加商品" />
- <div className="form-horizontal">
- <div className="form-group">
- <label className="col-md-2 control-label">商品名称</label>
- <div className="col-md-5">
- <p className="form-control-static">{this.state.name}</p>
- </div>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">商品描述</label>
- <div className="col-md-5">
- <p className="form-control-static">{this.state.subtitle}</p>
- </div>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">所属分类</label>
- <CategorySelector
- readOnly
- categoryId={this.state.categoryId}
- parentCategoryId={this.state.parentCategoryId}/>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">商品价格</label>
- <div className="col-md-3">
- <div className="input-group">
- <input type="number" className="form-control"
- value={this.state.price} readOnly/>
- <span className="input-group-addon">元</span>
- </div>
- </div>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">商品库存</label>
- <div className="col-md-3">
- <div className="input-group">
- <input type="number" className="form-control"
- value={this.state.stock} readOnly/>
- <span className="input-group-addon">件</span>
- </div>
- </div>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">商品图片</label>
- <div className="col-md-10">
- {
- this.state.subImages.length ? this.state.subImages.map(
- (image, index) => (
- <div className="img-con" key={index}>
- <img className="img" src={image.url} />
- </div>)
- ) : (<div>暂无图片</div>)
- }
- </div>
- </div>
- <div className="form-group">
- <label className="col-md-2 control-label">商品详情</label>
- <div className="col-md-10" dangerouslySetInnerHTML={{__html: this.state.detail}}></div>
- </div>
- </div>
- </div>
- )
- }
- }
- export default ProductDetail;
React后端管理系统-商品详情detail组件的更多相关文章
- React后台管理系统-商品管理列表组件
1.商品列表页面结构 <div id="page-wrapper"> <PageTitle title="商品列表" ...
- React后台管理系统-商品列表搜索框listSearch组件
1.商品列表搜索框 2.搜索框页面的结构为 <div className="row search-wrap"> <div classN ...
- React后台管理系统-订单管理
1.订单管理页面和商品管理页面类似,都是一个搜索组件+列表组件 2.搜索框search组件 import React from 'react'; class ListSearch extends ...
- React后台管理系统-添加商品组件
引入了CategorySelector 二级联动组件.FileUploader图片上传组件和RichEditor富文本编辑组件 import React from 'react'; import MU ...
- React后台管理系统-rich-editor组件
1.Simditor组件的github地址:https://github.com/mycolorway/simditor 网址:http://simditor.tower.im/ 2.在util里边新 ...
- react 从商品详情页返回到商品列表页,列表自动滚动上次浏览的位置
现状:目前从商品详情页返回到商品列表页,还需要再去请求服务数据,还需要用户再去等待获取数据的过程,这样用户体验非常不好, 遇到的问题: 1:如何将数据缓存, 2:如何获取和保存列表滑动的高度, 3:判 ...
- 商品详情页系统的Servlet3异步化实践
http://jinnianshilongnian.iteye.com/blog/2245925 博客分类: 架构 在京东工作的这一年多时间里,我在整个商品详情页系统(后端数据源)及商品详情页统一 ...
- [springboot 开发单体web shop] 8. 商品详情&评价展示
上文回顾 上节 我们实现了根据搜索关键词查询商品列表和根据商品分类查询,并且使用到了mybatis-pagehelper插件,讲解了如何使用插件来帮助我们快速实现分页数据查询.本文我们将继续开发商品详 ...
- Webpact打包React后端Node+Express
Webpact打包React后端Node+Express 前言 React官方推荐用Browserify或者Webpack 来开发React组件. Webpack 是什么?是德国开发者 Tobias ...
随机推荐
- robot framework 的AutoItLibrary常用关键字
1.run 的用法,以及激活当前窗口
- oracle 中 Start with...connect by 的用法(递归查询)
阿里电面问到了相关的知识,在网上找到这方面的文章. 这几个关键字是查询递归数据的,形成一个树状结构.目前只有oracle支持,其他数据都要结合存储过程实现 语法: select * from some ...
- 35、XPath的使用示例
使用Xpath获取页面元素 [参见W3C官网说明] http://www.w3school.com.cn/xpath/xpath_syntax.asp 以下Xpath路径都是获取下面地址的元素 ...
- pat1090. Highest Price in Supply Chain (25)
1090. Highest Price in Supply Chain (25) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 C ...
- 谷歌添加百度翻译提示Google已将百度翻译标记为恶意程序并阻止安装,怎么办
进入谷歌浏览器的设置, 显示高级设置——隐私设置下七个选项中的第四个选项(启用针对网上诱骗和恶意软件的防护功能)把勾去掉,然后将百度翻译的CRX拖动到chrome的安装插件页面, 修改chrome的限 ...
- node搭环境(二)之 bower gulp
前面详细记录了安装node及git,接来下要安装bower,首先创建一个空文件夹bowerandgulp. 步骤:1.安装node.js 2.node里面自带了 npm 3.通过npm 安装cnpm ...
- Windows Store 应用中获取程序集版本号的方法
本文为个人博客备份文章,原文地址: http://validvoid.net/windows-store-app-get-assembly-version/ WinRT 中对反射做了很多限制,假设 W ...
- ThinkPHP find大坑 不要随便用
举例: M("User")->find(3); $m=M("User"); $m->userName="aaa"; $m-> ...
- poj 1741 两点距离小于K(树DP)
http://blog.csdn.net/woshi250hua/article/details/7723400 求两点间距离小于等于k的方案数 理一下思路: 求通过点A与另一点连接符合条件的个数 = ...
- 网站架构:消息队列 Java后端架构
2017-01-13 一.消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题.实现高性能,高可用,可伸缩和最终一致性架构.是大型分布式系统不可缺少的中间 ...