2017-04-21 89 views
1

的我發現我的ionic 2如果我使用運行在iphone5Chromeiphone6ipadiPad pro有這樣的錯誤:離子2 - 遺漏的類型錯誤:無法讀取屬性「1」空

kernel.js:281 Uncaught TypeError: Cannot read property '1' of null

這顯然是由追獵這條線:

... 
ver: (navigator.appVersion.match('Chrome/([0-9\.]+)') || 

navigator.userAgent.match('Firefox/([0-9\.]+)'))[1],///<---[1] is the issue 
... 

我用Google搜索和閱讀一些關於這一點,現在看來似乎是因爲[1]的。 this post建議刪除[1]。但我不確定kernel.js在哪裏。

這不是一個問題,因爲我只部署到Android(奇怪的是,即使是在模擬沒有問題。只有在所有ios無論是模擬或設備)。但我認爲解決這個問題更好一些,以便我的客戶在決定部署到ios時不會咆哮。

我應該如何解決這個問題?

  1. 我在哪裏可以找到kernel.js?我看着node_modules,它太大而無法搜索。我想嘗試刪除它,看看它是否給我的問題。

回答

0

如果沒有匹配,JavaScript String.match()函數將返回null,因此在您的情況下,如果useragent不是FireFox。除Chrome或FireFox之外的其他瀏覽器也會出現相同的錯誤。你需要檢查一下。

編輯: iOS上的Chrome未在導航器中標記爲「Chrome」,而是標記爲「CriOS」。參見:https://developer.chrome.com/multidevice/user-agent

相關問題