博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
让anujs支持rc-select
阅读量:6673 次
发布时间:2019-06-25

本文共 3208 字,大约阅读时间需要 10 分钟。

git clone git@github.com:react-component/select.gitcd selectnpm i babel-plugin-antd --save-devnpm i

然后自己使用webpack打包,里面是用webpack2,在根目录下建立webpack-config.js

var webpack = require('webpack');var path = require('path');module.exports = {    context: path.resolve(__dirname, './src/'),    entry: {        app: './index.js'    },    //输出文件出口    output: {        /*         输出路径,在这我们要手动创建一个文件夹,名字可以自己命名,         输出的文件路径是相对于本文件的路径         * */        path: path.resolve(__dirname, './dist/'),        filename: '[name].js' //输出文件名,文件可以自己定义,[name]的意思是与入口文件的文件对应,可以不用[name],    },    /*     * 标题:加载器(loaders)     * 作用:需要下载不同别的加载器,如css,js,png等等     * */    module: {        rules: [            {                test: /\.jsx?$/,                exclude: [/node_modules/],                use: [                    {                        loader: 'babel-loader',                        options: {                           "presets": [ "es2015", "stage-0", "react"],                           "plugins": [["antd", { "style": true }]]                        }                    }                ]            },            { //解析 .less              test: /\.less$/,              loader: 'style-loader!css-loader!less-loader' //从右往左 先把less解析成css,再加前缀          }            // Loaders for other file types can go here        ]    },    /*     *     * */    resolve: {          extensions: [' ','.jsx','.js','.json'],        /*         * 别名配置,配置之后,可以在别的js文件中直接使用require('d3'),将导入的文件作为一个模块导入到你需要的项目中,不用配置别也可会当作模块导入项目中,只是你要重复写路径而已。         * */        alias: {}    }}

然后改造src/index.js

import Select from './Select';import Option from './Option';import { SelectPropTypes } from './PropTypes';import OptGroup from './OptGroup';Select.Option = Option;Select.OptGroup = OptGroup;import React from 'react';import ReactDOM from 'react-dom';import '../assets/index.less'class Test extends React.Component {  state = {    destroy: false,    value: String(9),  };  onChange = (e) => {    let value;    if (e && e.target) {      value = e.target.value;    } else {      value = e;    }    console.log('onChange', value);    this.setState({      value,    });  };  onDestroy = () => {    this.setState({      destroy: 1,    });  };  onBlur = (v) => {    console.log('onBlur', v);  };  onFocus = () => {    console.log('onFocus');  };  render() {    if (this.state.destroy) {      return null;    }    return (      

Single Select

); }}ReactDOM.render(
, document.getElementById('__react-content'));

然后命令行

webpack

建立一个index.html

    
rc-select-single

最后你可以安装 npm i serve来安装一个http服务器,或者使用vs code直接打开

65123-20170902084037015-973359759.png

第一阶段完成

然后要瘦身,将react改成anujs那套东西,只要在webpack的配置对象上改一改

alias: {            react: 'anujs',            'react-dom': 'anujs',            'prop-types': 'anujs/lib/ReactPropTypes',            'create-react-class': 'anujs/lib/createClass'        }

转载地址:http://ewgxo.baihongyu.com/

你可能感兴趣的文章
iOS开发-UITapGestureRecognizer手势
查看>>
在QTreeWidget中删除QTreeWidgetItem
查看>>
网页引导:jQuery插件实现的页面功能介绍引导页效果
查看>>
【CSS】使用CSS改变超链接样式
查看>>
HTC T328W刷机包 仿三星S5 UI美化 精简 S5落下
查看>>
spring AOP面向切面编程学习笔记
查看>>
Proftp设置虚拟用户(转)
查看>>
基于tiny4412的Linux内核移植(支持device tree)(二)
查看>>
iOS开发网络篇—NSURLConnection基本使用
查看>>
angularjs笔记(二)
查看>>
SQL Server数据库多种方式查找重复记录
查看>>
Target runtime Apache Tomcat v6.0 is not defined.错误解决方法
查看>>
为什么我们要研究中断?【转】
查看>>
tcpdump wireshark 实用过滤表达式(针对ip、协议、端口、长度和内容) 实例介绍...
查看>>
C#.net调用axis2webService
查看>>
NOIP2010乌龟棋[DP 多维状态]
查看>>
Linux 系统中用户切换(su user与 su - user 的区别)
查看>>
微信订阅号消息回复测试
查看>>
数据库 Proc编程二
查看>>
zabbix-agent 自动注册
查看>>