调试页面 ng serve 正常

ng build 也正常

ng build --prod 异常:Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory'

开始以为是以前那样,引用错了路径或少引用了东西。

搜了好多资料,发现是 angular-cli 的版本有点低了(因为用了最新的material)

找到原因了,问题就很容易解决了

第一步:

rm -rf node_modules/

第二部:

npm install --save-dev @angular/cli@latest

第三部:重新安装依赖

npm install

搞定!

如果升级了,爆出其他乱七八糟的异常,甚至连build都不行了。则看下,是不是这个问题:

我的一个项目中,因为嫌慢,使用了cnpm安装node_modules,安装了一个三方插件,用的npm install。导致了这个问题。最后把angular-cli卸载,重新安装了最新版本,全部使用cnpm来安装,才得以解决。用到的命令:

npm uninstall -g angular-cli
npm uninstall --save-dev angular-cli
npm uninstall -g @angular/cli
npm uninstall --save-dev @angular/cli

rm -rf node_modules dist
npm cache clean

cnpm uninstall -g angular-cli
cnpm uninstall --save-dev angular-cli
cnpm uninstall -g @angular/cli
cnpm uninstall --save-dev @angular/cli
cnpm cache clean

cnpm install -g @angular/cli@latest
cnpm install --save-dev @angular/cli@latest
cnpm install

 

随机推荐

  1. Java - String中的==、equals及StringBuffer(转自CSDN 作者:chenrui_)

    equals是比较值/对象是否相同,==则比较的是引用地址是否相同. ==  如果是基本类型则表示值相等,如果是引用类型则表示地址相等即是同一个对象 package com.char3; public ...

  2. (转)MyISAM Key Cache详解及优化

    原文:http://huanghualiang.blog.51cto.com/6782683/1372721 一.MyISAM Key Cache详解: 为了最小化磁盘I/O,MyISAM将最频繁访问 ...

  3. 【Qt开发】更改应用程序图标和任务栏图标

    说明 实际开发过程中,生成的应用文件不会用默认的图标,同时程序启动后任务栏的图标也需要修改,还有窗口的图标,这样显得程序不那么low.更改程序的图标有多种方式,基于Qt Creator或vs开发的方式 ...

  4. ruby中的retry和redo

    # retry用于处理异常中的begin/end代码块中,如果发生异常会重新运行 begin 和 rescue 之间的代码#当retry 被调用的话,begin 和 rescue 之间所有的代码都会被 ...

  5. Django的学习基础1

    著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层:他们之间以一种插件似的,松耦合的方式连接在一起. Django的MTV模式本质上与MVC模式没有什么差别,也是 ...

  6. CentOS 6.9安装docker之前升级系统内核版本

    问题描述:安装docker,官方文档要求Linux kernel至少3.8以上,且docker只能运行在64位的系统中(这个很重要,搞了个i386的系统升级了半天没成功) 升级步骤: 1.因位安装服务 ...

  7. HTTP Error 502.5 - Process Failure asp.net core error in IIS

    在windows server 2012 上安装完dotnet-win-x64.1.1.1.exe 和 DotNetCore.1.0.4_1.1.1-WindowsHosting.exe后,没有重启服 ...

  8. MySQL 字段全部转换成小写

    原因: 因为框架某些字段大写有时候不被正确识别,所以字段都修改成小写; 特别说明:因为这里只有表,没有视图,存储过程等等其它所以我可以直接这么写; 步骤: 1.导出结构语句 2. 执行C# 脚本,替换 ...

  9. javascript下的arguments,caller,callee,call,apply示例及理解

    (参考:http://justcoding.iteye.com/blog/589111) Arguments  该对象代表正在执行的函数和调用它的函数的参数. [function.]arguments ...

  10. 如何使用 MySQL EntityFramework 组件处理 MYSQL PaaS DB

    MySQL Database on Azure 是 Azure 平台上推出的 MySQL 云数据库服务,通过全面兼容 MySQL 协议,为用户提供了一个全托管的性能稳定.可快速部署.高可用.高安全性的 ...