我有一个应用程序从角度2迁移到角度5.当我在本地部署并通过http-server
启动它时,我没有错误。
当我在我的虚拟机上部署时会出现问题。部署后,当我在浏览器中打开它时,它会抛出以下错误:
TypeError:Object(...)不是函数 在_isAndroid(forms.js:920)
错误:未捕获(在承诺中):TypeError:Object(...)不是函数 TypeError:Object(...)不是函数 在_isAndroid(forms.js:920)
vm中的部署过程如下:
angular-cli
我的机器(本地和虚拟机)具有完全相同的npm 5.8.0,@ angular-cli 1.7.3并且我不使用package-lock.json
。
最后,我必须提一下,在迁移之前,我有完全相同的部署过程。
你知道什么可能出错吗?
更新
我想到的是一个全新的虚拟机初始化(os,节点等)
答案 0 :(得分:0)
我不相信Node 6.x中有Object静态方法(好吧,不是没有标志) 根据Node网站,他们可以在7.x开始使用。
有关所需最低版本的详细信息,请参阅此page
如ForestG所述,您最好的解决方案是将VM更新到Node 7.x或更高版本。
答案 1 :(得分:0)
由于缺少;
或激进的优化或文件损坏会导致缩小问题,但如果没有源代码则很难理解。
示例:
//without minification works ok
function test() {
var postTypes = new Array('hello', 'there')
(function() { alert('hello there') })()
}
//after minification produces error Uncaught TypeError: object is not a function
function test() {
var postTypes = new Array('hello', 'there')(function() { alert('hello there') })()
}