【问题标题】:Including js file in handlerbar在车把中包含 js 文件
【发布时间】:2019-12-18 13:07:44
【问题描述】:

我无法收到对我的 js 文件的任何调用。可能是什么问题呢?使用 MVC

查看,文件.hbs

<div class="container">
  <h2 onClick="test()">Title</h2>
  {{>list}}
</div>

<script src='/public/js/game.js' type='text/javascript'></script>

公共 game.js 文件

function test(){
   alert("alert");
}

路由器文件

'use strict';

 const express = require('express');
 const router = express.Router();
 const GameController = require('../controllers/game');

 router.get('/', GameController.initialize);

 module.exports = router;

【问题讨论】:

    标签: javascript html model-view-controller handlebars.js


    【解决方案1】:

    一个函数不能被调用,除非它是在同一个文件中定义的,或者是在试图调用它之前加载的。 意味着,您需要将 script-tag 移到 div-tag 之前,它应该可以工作。控制台也应该给你一些提示。

    【讨论】:

    • 控制台有错误吗?大多数错误是由错误的源路径引起的。你可以尝试把game.js和file.hbs放在同一个文件夹里,把src路径改成“game.js”
    • 是的,错误:“GET /game/game.js 404”还试图将它们移动到同一个文件夹。
    • 是的,那就是路径的问题。如果你在游戏文件夹中获得了 game.js 文件,你应该通过 src='game/game.js' 访问它,不带前导斜杠。
    • 我设法解决了这个问题,问题是我不应该在路径中使用“public”,所以 src="/js/game.js" 解决了这个问题。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2017-09-09
    • 2017-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    相关资源
    最近更新 更多