簡體   English   中英

使用Node.JS,Express和EJS的browserify實現示例

[英]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.

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