1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- const path = require('path');
- module.exports = {
- entry: {
- index: './src/index.tsx',
- framework: ['react', 'react-dom'],
- },
- output: {
- filename: 'js/bundle.js',
- path: path.resolve(__dirname, '../dist'),
- },
- devtool: 'source-map',
- resolve: {
- // Add '.ts' and '.tsx' as resolvable extensions.
- extensions: ['.ts', '.tsx', '.js', '.json'],
- },
- module: {
- rules: [
- {
- test: /\.tsx?$/,
- loader: 'awesome-typescript-loader',
- },
- {
- test: /\.(js|jsx)$/,
- use: 'babel-loader',
- exclude: /node_modules/,
- },
- {
- test: /\.(png|jpe?g|gif|webp)(\?.*)?$/,
- use: [
- {
- loader: 'url-loader',
- options: {
- name: '[name].[ext]',
- outputPath: 'images/',
- limit: 4096,
- fallback: {
- loader: 'file-loader',
- options: {
- name: 'img/[name].[hash:8].[ext]',
- },
- },
- },
- },
- ],
- },
- {
- test: /\.(eot|ttf|svg|woff|woff2)$/,
- use: {
- loader: 'file-loader',
- options: {
- name: '[name]_[hash].[ext]',
- outputPath: 'font/',
- },
- },
- },
- ],
- },
- };
|