React + Typescript + Webpack 开发环境配置
对于复杂或多人开发的
且配置也是非常简单,步骤如下。 文件目录. ├── build # 前端配置文件 │ ├── index.html │ ├── webpack.config.js ├── app # 前端目录 ├── .gitignore ├── package.json ├── tsconfig.json └── tslint.json 配置流程创建项目mkdir my-project && cd my-project npm init 安装依赖npm i -g webpack webpack-dev-server npm i --save react react-dom @types/react @types/react-dom npm i --save-dev ts-loader source-map-loader npm link webpack webpack-dev-server typescript 配置 webpack/* build/webpack.config.js */ const config = { entry: './app/index.tsx', output: { filename: 'app.bundle.js', path: './public', publicPath: '/assets' }, devtool: 'source-map', resolve: { extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js'] }, module: { loaders: [ { test: /.tsx?$/, loader: 'ts-loader' } ], preLoaders: [ { test: /.js$/, loader: 'source-map-loader' } ] }, devtool: 'eval' } module.exports = config 配置 tsconfig/* tsconfig.json */ { "compilerOptions": { "outDir": "./public/", "sourceMap": true, "noImplicitAny": true, "module": "commonjs", "target": "es5", "jsx": "react" }, "files": [ "./app/index.tsx" ] } 至此,基本配置已经完成,后面创建好一个入口页面和 <!-- build/index.html --> <!doctype html> <html lang="zh-cn"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no"> <title>Hello world</title> <script src="http://localhost:8080/webpack-dev-server.js"></script> </head> <body> <div id="app"></div> <script src="assets/app.bundle.js"></script> </body> /* app/index.tsx */ import * as React from 'react' import { render } from 'react-dom' interface IAppProps {} interface IAppState {} class App extends React.Component<IAppProps, IAppState> { public render(): JSX.Element { return ( <div> Hello world </div> ) } } render(<App />, document.getElementById('app')) 启动项目webpack-dev-server --inline --config build/webpack.config.js --content-base build --open :smirk: :smirk: :smirk: 出来吧神龙 简单的说明Webpack 配置Webpack配置其实是一件很简单的事情,这也是他具备强大竞争力的重要因素。 npm i --save-dev style-loader css-loader /* build/webpack.config.js */ const config = { // ... module: { loaders: [ { test: /.css/, loader: 'style-loader!css-loader' } ], // ... }, // ... } 项目启动项目启动的命令过长,放进 /* package.json */ { "scripts": { "dev": "webpack-dev-server --inline --config build/webpack.config.js --content-base build --open", }, } 再执行以下命令试试: npm run dev
tslint在开发中如果有个约束代码的工具能够让代码更加优雅,以前用的是 npm i -g tslint cd my-project tslint --init 这样会在项目文件中创建一个现成的 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |