首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >部署角2教程webpack构建

部署角2教程webpack构建
EN

Stack Overflow用户
提问于 2016-10-24 12:21:40
回答 1查看 169关注 0票数 1

我目前正在努力学习ng2。

我遵循了这里的教程:https://angular.io/docs/ts/latest/guide/webpack.html

并且发现创建了构建的dist,在尝试运行它时,无论是在本地还是在Github页面上,我都会收到包文件上的404错误。

我已经遵循了教程的路线,它似乎不起作用。

有人能帮忙吗?

我的webpack建筑如下:

webpack.common.js

代码语言:javascript
复制
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var helpers = require('./helpers');

module.exports = {
    entry: {
        'polyfills': './src/polyfills.ts',
        'vendor': './src/vendor.ts',
        'app': './src/main.ts'
    },

    resolve: {
        extensions: ['', '.js', '.ts']
    },

    module: {
        loaders: [
            {
                test: /\.ts$/,
                loaders: ['awesome-typescript-loader', 'angular2-template-loader']
            },
            {
                test: /\.html$/,
                loader: 'html'
            },
            {
                test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/,
                loader: 'file?name=assets/[name].[hash].[ext]'
            },
            {
                test: /\.css$/,
                exclude: helpers.root('src', 'app'),
                loader: ExtractTextPlugin.extract('style', 'css?sourceMap')
            },
            {
                test: /\.css$/,
                include: helpers.root('src', 'app'),
                loader: 'raw'
            }
        ]
    },

    plugins: [
        new webpack.optimize.CommonsChunkPlugin({
            name: ['app', 'vendor', 'polyfills']
        }),

        new HtmlWebpackPlugin({
            template: 'src/index.html'
        })
    ]
};

webpack.prod.js

代码语言:javascript
复制
var webpack = require('webpack');
var webpackMerge = require('webpack-merge');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var commonConfig = require('./webpack.common.js');
var helpers = require('./helpers');

const ENV = process.env.NODE_ENV = process.env.ENV = 'production';

module.exports = webpackMerge(commonConfig, {
    devtool: 'source-map',

    output: {
        path: helpers.root('dist'),
        publicPath: '/',
        filename: '[name].[hash].js',
        chunkFilename: '[id].[hash].chunk.js'
    },

    htmlLoader: {
        minimize: false // workaround for ng2
    },

    plugins: [
        new webpack.NoErrorsPlugin(),
        new webpack.optimize.DedupePlugin(),
        new webpack.optimize.UglifyJsPlugin({ // https://github.com/angular/angular/issues/10618
            mangle: {
                keep_fnames: true
            }
        }),
        new ExtractTextPlugin('[name].[hash].css'),
        new webpack.DefinePlugin({
            'process.env': {
                'ENV': JSON.stringify(ENV)
            }
        })
    ]
});

Index.html

代码语言:javascript
复制
<!DOCTYPE html>
<html>

<head>
    <base href=/>
    <title>Angular With Webpack</title>
    <meta charset=UTF-8>
    <meta name=viewport content="width=device-width,initial-scale=1">
    <link href="/app.f053dbe7ce9dd32c3e43.css" rel="stylesheet">
</head>

<body>
    <my-app>Loading...</my-app>
    <script type="text/javascript" src="/polyfills.f053dbe7ce9dd32c3e43.js"></script>
    <script type="text/javascript" src="/vendor.f053dbe7ce9dd32c3e43.js"></script>
    <script type="text/javascript" src="/app.f053dbe7ce9dd32c3e43.js"></script>
</body>

</html>
EN

回答 1

Stack Overflow用户

发布于 2016-10-24 13:22:25

我也有同样的问题!配置dir中有karma.conf.js吗?您的项目结构应该是:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40218301

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档