diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..4f4f515 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,27 @@ +{ + "extends": ["airbnb"], + "parserOptions": { + "ecmaVersion": 2016, + "sourceType": "module", + "ecmaFeatures": { + "jsx": true + } + }, + "env": { + "browser": true, + "es6": true, + "node": true + }, + "settings": { + "import/parser": "babel-eslint", + "import/resolver": { + "webpack": { + "config": "webpack.config.js" + } + } + }, + "rules": { + "react/jsx-filename-extension": [1, { "extensions": [".js", ".jsx"] }], + "semi": [2, "never"] + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7083a4e --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +build +dist +lib-cov +coverage.html +.DS_Store +node_modules +publish +*.sock +*.swp +*.bat +*.sh \ No newline at end of file diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..8529089 --- /dev/null +++ b/.npmrc @@ -0,0 +1,3 @@ +phantomjs_cdnurl=http://cnpmjs.org/downloads +sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ +registry=https://registry.npm.taobao.org diff --git a/package.json b/package.json new file mode 100644 index 0000000..1c39079 --- /dev/null +++ b/package.json @@ -0,0 +1,45 @@ +{ + "name": "react-example", + "version": "1.0.0", + "description": "react example", + "main": "index.js", + "scripts": {}, + "keywords": [ + "react example" + ], + "author": "lobos841@gmail.com", + "repository": { + "type": "git", + "url": "git://github.com/lobos/react-example.git" + }, + "license": "MIT", + "dependencies": { + "react": "^15.5.4", + "react-dom": "^15.5.4" + }, + "devDependencies": { + "autoprefixer": "^6.7.7", + "babel-core": "^6.24.1", + "babel-eslint": "^7.2.2", + "babel-loader": "^6.4.1", + "babel-plugin-react-require": "^3.0.0", + "babel-plugin-transform-object-rest-spread": "^6.23.0", + "babel-preset-es2015": "^6.24.1", + "babel-preset-react": "^6.24.1", + "css-loader": "^0.28.0", + "eslint": "^3.19.0", + "eslint-config-airbnb": "^14.1.0", + "eslint-plugin-import": "^2.2.0", + "eslint-plugin-jsx-a11y": "^4.0.0", + "eslint-plugin-react": "^6.10.3", + "file-loader": "^0.11.1", + "less": "^2.7.2", + "less-loader": "^4.0.3", + "node-sass": "^4.5.2", + "postcss-loader": "^1.3.3", + "sass-loader": "^6.0.3", + "style-loader": "^0.16.1", + "url-loader": "^0.5.8", + "webpack": "^2.3.3" + } +} diff --git a/src/index.js b/src/index.js new file mode 100644 index 0000000..3951382 --- /dev/null +++ b/src/index.js @@ -0,0 +1,20 @@ +import React, { Component } from 'react' +import ReactDOM from 'react-dom' + +import '_/styles/index.scss' + +class App extends Component { + constructor(props) { + super(props) + + this.state = {} + } + + render() { + return ( +