簡體   English   中英

Node.js / Express不輸出console.log,highcharts.js給出了未定義的錯誤

[英]Node.js/Express not outputting console.log, highcharts.js giving undefined error

我來自PHP,但是第一次嘗試使用Node / Express網站。 我已經成功地使用express-generator使基本骨架在localhost上運行。 我還通過npm安裝了highcharts,並按照highcharts給出說明通過require()將其添加到我的項目中。 我現在在index.js中有這個:

 var express = require('express'); var Highcharts = require('highcharts'); var router = express.Router(); // Load module after Highcharts is loaded require('highcharts/modules/exporting')(Highcharts); console.log(Highcharts); // Create the chart Highcharts.chart('container', { /*Highcharts options*/ }); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); module.exports = router; 

我有兩個問題:

1)運行DEBUG = project:* npm start時,console.log()不輸出到終端或瀏覽器控制台。 它是否輸出到其他我沒有檢查過的東西,或者我需要做更多的事情才能看到這個?

2)require('highcharts / modules / exporting')(Highcharts); 引發TypeError:無法讀取/Applications/MAMP/htdocs//node_modules/highcharts/modules/exporting.js:9:115中未定義的屬性“ document”
我在哪里弄糟?

您鏈接到的Highcharts示例使用require()是,許多人通過Browserify運行其瀏覽器代碼,以便繼續使用自己喜歡的Node習慣用法並保持一定程度的同構設計

盡管如此,Highcharts仍然適用於瀏覽器,不能在Node中使用。 您的Express應用程序應該提供一個HTML頁面,該頁面本身可以通過某種方式加載Highcharts。 您不限於使用Browserify,但是在這種情況下,它是一種流行的選擇。

同樣,對於不確定在哪里尋找日志的不確定性:總是終端。 您的Node程序將永遠不會登錄到瀏覽器控制台,除非您使用Node Inspector之類的奇特方法使它們登錄。

看一下錯誤:

require('highcharts / modules / exporting')(Highcharts); 引發TypeError:無法讀取未定義的屬性'document'

它在尋找作為瀏覽器API的document ,HighCharts僅在客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM