详解用webpack2搭建angular2的项目


Posted in Javascript onJune 22, 2017

webpack2和angular2搭建的项目

github地址:项目链接

  1. npm install,安装依赖包
  2. npm run dev,启动本地工程,在localhost:1699进行预览
package.json
{
 "name": "angular-webpack",
 "version": "1.0.0",
 "description": "webpack2 & angular2",
 "scripts": {
  "dev": "babel-node ./src/config/dev.js"
 },
 "author": "Travis Lee",
 "license": "ISC",
 "dependencies": {
  "@angular/common": "~4.0.0",
  "@angular/compiler": "~4.0.0",
  "@angular/core": "~4.0.0",
  "@angular/forms": "~4.0.0",
  "@angular/http": "~4.0.0",
  "@angular/platform-browser": "~4.0.0",
  "@angular/platform-browser-dynamic": "~4.0.0",
  "@angular/router": "~4.0.0",
  "core-js": "^2.4.1",
  "es6-shim": "^0.35.3",
  "reflect-metadata": "^0.1.8",
  "rxjs": "5.0.1",
  "zone.js": "^0.8.4"
 },
 "devDependencies": {
  "babel-core": "^6.25.0",
  "babel-loader": "^7.1.0",
  "babel-preset-es2015": "^6.24.1",
  "clean-webpack-plugin": "^0.1.16",
  "css-loader": "^0.28.4",
  "extract-text-webpack-plugin": "^2.1.2",
  "path": "^0.12.7",
  "style-loader": "^0.18.2",
  "ts-loader": "^2.1.0",
  "typescript": "^2.3.4",
  "typings": "^2.1.1",
  "uglifyjs-webpack-plugin": "^0.4.6",
  "webpack": "^2.6.1",
  "webpack-dev-server": "^2.5.0",
  "webpack-merge": "^4.1.0"
 }
}

webpack配置文件开发版:

import path from 'path'
import config from "./webpack.config"
import merge from "webpack-merge"
import webpack from "webpack"
import webpackDevServer from "webpack-dev-server"
import { format } from 'util'

let PORT = 1699;
let PUBLIC_PATH = "http://localhost:" + PORT + "/";
let webpackConifg = merge(config, {
  devtool: "source-map",
  //debug: true, webpack2 已切换到plugins中,据说在3中将取消
  entry: {
    main: [
      format("webpack-dev-server/client?%s", PUBLIC_PATH),
      "webpack/hot/dev-server",
      "./src/main.ts"
    ]
  },
  output: {
    path: path.resolve(__dirname, '../../dist'),
    publicPath: PUBLIC_PATH,
    filename: '[name].js'
  },
  plugins: [
    new webpack.HotModuleReplacementPlugin()
  ]
})
const compiler = webpack(webpackConifg);
new webpackDevServer(compiler, {
  inline: true,
  hot: true,
  port: PORT,
  stats: {
    colors: true
  }
}).listen(PORT, 'localhost', (err) => {
  console.log(123)
})

搭建中遇到的问题:

The URL 'localhost:1699/sockjs-node' is invalid, 

该问题是由于webpack配置文件中的publicPath前边没有加http://,导致url解析失败

Uncaught reflect-metadata shim is required when using class decorators,

 这个问题是由于main.ts文件中没有引入 reflect-metadata和zone.js

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
发布BlueShow v1.0 图片浏览器(类似lightbox)blueshow.js 打包下载
Jul 21 Javascript
JavaScript XML实现两级级联下拉列表
Nov 10 Javascript
无缝滚动改进版支持上下左右滚动(封装成函数)
Dec 04 Javascript
js倒计时小程序
Nov 05 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
Jan 28 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
Sep 26 Javascript
使用jsonp实现跨域获取数据实例讲解
Dec 25 Javascript
angularjs中的$eval方法详解
Apr 24 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
Dec 09 Javascript
详解vue组件开发脚手架
Jun 15 Javascript
微信小程序实现上传照片代码实例解析
Aug 04 Javascript
mapboxgl实现带箭头轨迹线的代码
Jan 04 Javascript
vue2.0实现分页组件的实例代码
Jun 22 #Javascript
纯JS实现只能输入数字的简单代码
Jun 21 #Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
Jun 21 #Javascript
Vue实现百度下拉提示搜索功能
Jun 21 #Javascript
vue2.0中click点击当前li实现动态切换class
Jun 21 #Javascript
jQuery实现可拖动进度条实例代码
Jun 21 #jQuery
详解Vue整合axios的实例代码
Jun 21 #Javascript
You might like
php遍历数组的方法分享
2012/03/22 PHP
PHP实现无限级分类(不使用递归)
2015/10/22 PHP
在Yii2中使用Pjax导致Yii2内联脚本载入失败的原因分析
2016/03/06 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
用AJAX返回HTML片段中的JavaScript脚本
2010/01/04 Javascript
JSQL  一个 web DB 的封装
2010/05/05 Javascript
js最简单的拖拽效果实现代码
2010/09/24 Javascript
JavaScript的arguments对象应用示例
2014/09/15 Javascript
AngularJS向后端ASP.NET API控制器上传文件
2016/02/03 Javascript
Js的Array数组对象详解
2016/02/22 Javascript
详解Matlab中 sort 函数用法
2016/03/20 Javascript
JS常用字符串方法(推荐)
2021/01/15 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
全站最详细的Vuex教程
2018/04/13 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
2019/12/30 Javascript
Vue的v-model的几种修饰符.lazy,.number和.trim的用法说明
2020/08/05 Javascript
vue等两个接口都返回结果再执行下一步的实例
2020/09/08 Javascript
[43:35]EG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
详解Python 数据库 (sqlite3)应用
2016/12/07 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
Python中的异常处理try/except/finally/raise用法分析
2019/02/28 Python
Python中按键来获取指定的值
2019/03/02 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
2020/11/02 Python
NBA德国官方网上商店:NBA Store德国
2018/04/13 全球购物
The Athlete’s Foot新西兰:新西兰最大的运动鞋零售商
2019/12/23 全球购物
预备党员入党思想汇报
2014/01/04 职场文书
七年级生物教学反思
2014/01/30 职场文书
网上快餐厅创业计划书
2014/02/01 职场文书
超市周年庆活动方案
2014/08/16 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
驳回起诉裁定书
2015/05/19 职场文书
webpack介绍使用配置教程详解webpack介绍和使用
2022/06/25 Javascript
CSS元素定位之通过元素的标签或者元素的id、class属性定位详解
2022/09/23 HTML / CSS