Автоматический импорт JS-модулей - машинопись и веб-пакет - PullRequest
0 голосов
/ 18 сентября 2018

Интересно, есть ли способ автоматического импорта модулей javascript в машинописный текст и / или веб-пакет?

Я импортирую загрузчик в каждом классе Typescript, но я думаю, что это не очень хорошая практика, потому что иногда я использую2 класса в одном представлении HTML.Я попытался импортировать каждый класс в одном файле, а затем экспортировать его, например, так:

import { ODT } from './Classes/Odt.class';
import { Proyecto } from './Classes/Proyecto.class';
import { Reporte } from './Classes/Reporte.class';

import 'bootstrap';
import 'bootstrap-select';
import 'select2';
import swal from 'sweetalert';;

export {
    ODT,
    Proyecto,
    Reporte,
};

Но когда я скомпилировал как веб-пакет как производство, у меня появилось это предупреждение: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB)

Вот мой конфиг (версия для разработчиков):

const path           = require('path');
var LiveReloadPlugin = require('webpack-livereload-plugin');
var webpack          = require('webpack');

module.exports = {
    mode: 'development',
    watch: true,
    watchOptions: {
        aggregateTimeout: 300,
        poll: true
    },
    plugins: [
        new LiveReloadPlugin({
            appendScriptTag: true
        }),
        new webpack.ProvidePlugin({
            $: 'jquery',
            'window.jQuery': 'jquery',
            Vue: ['vue/dist/vue.esm.js', 'default'],
        }),
    ],
    entry: {
        main: './src/main.ts',
        odts: './src/Classes/Odt.class.ts',
        proyectos: './src/Classes/Proyecto.class.ts',
        reportes: './src/Classes/Reporte.class.ts',
    },
    module: {
        rules: [
            {
                test: /\.tsx?$/,
                use: 'ts-loader',
                exclude: /node_modules/
            },
            {
                test: /\.css$/,
                use: ['style-loader', 'css-loader'],
                // exclude: /node_modules/
            },
            {
                test: /\.vue$/,
                loader: 'vue-loader'
            },
            {
                test: /\.(png|jpg|gif|svg|eot|ttf|woff|woff2)$/,
                loader: 'url-loader',
                options: {
                    limit: 10000
                }
            },
            {
                test: /\.exec\.js$/,
                use: ['script-loader']
            }
        ]
    },
    resolve: {
        extensions: ['.tsx', '.ts', '.js'],
    },
    output: {
        path: path.resolve(__dirname, '../dist'),
        filename: 'dev.[name].bundle.js',
        library: ['EntryPoint', '[name]'],
    },
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...