[英]Example of browserify implementation with Node.JS, Express, and EJS
我無法讓browserify在我的Web應用程序上正常工作。
我在終端中使用browserify並創建bundle.js文件。 我將其放在我的public / javascripts文件夾中,並將其包含在我的EJS文件中,但仍然無法使代碼正常工作:
終奌站:
browserify public/javascripts/chat.js > bundle.js
chat.js文件:
$(function() {
var parse = require("parse").Parse;
let query = new Parse.Query('Chat');
let subscription = query.subscribe();
subscription.on('open', () => {
//console.log('subscription opened');
alert("sub opened");
});
subscription.on('create', (object) => {
//console.log('object created: ' + object.get('message'));
alert('object created: ' + object.get('message'))
});
});
ejs文件:
<script src="javascripts/bundle.js "></script>
src="javascripts/bundle.js"
是相對路徑 。 當你的應用程序來這個路徑,它將尋找一個文件夾命名javascript
您的文件夾內server.js
(或任何文件,其運行的節點處理),並不能找到它; 因為我很確定您不會在公用文件夾中提供您的后端應用程序。
我認為您的意思是src="/javascripts/bundle.js"
。 現在,它是一個絕對路徑 ,如果你正在處理的是靜態文件public
文件夾:
app.use(express.static(path.join(__dirname, 'public')));
無論server.js
的位置或運行位置如何,此文件都可以從http://yourhost/javascripts/bundle.js
。
更新:沒意識到這一點,但是我不得不在bundle.js腳本下面包含chat.js腳本,然后使其生效。 謝謝@Dnitro
更改為:
<script src="javascripts/bundle.js "></script>
<script src="javascripts/chat.js "></script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.