将laravel-echo和pusher-js安装为一个简单的js文件而不使用npm

A.B*_*per 7 javascript php laravel-5.3

要在laravel 5.3中接收广播通知,我需要在我的刀片模板中包含laravel-echo和pusher-js文件.

我知道这可以通过npm包管理器在官方laravel文档中解释如下:

npm install --save laravel-echo pusher-js 
Run Code Online (Sandbox Code Playgroud)

然后在resouces/assets/js/app.js文件导入它像这样:

import Echo from "laravel-echo"

window.Echo = new Echo({
    broadcaster: 'pusher',
    key: 'your-pusher-key-here'
});
Run Code Online (Sandbox Code Playgroud)

但我有一个简单的js文件,我的所有脚本都在里面,我没有在我的项目中使用npm,我的所有javascript文件都是.js.

我去了laravel-echo github页面但我没有找到任何js格式的文件,我可以在我的页面中使用.

除了npm之外还有什么方法可以包含laravel-echo吗?

更新:

我发现,上面的代码是基于打字稿 .I'm不熟悉的打字稿.只有我知道它可以编译为纯javascript文件.我正在寻找laravel-echo作为一个js文件,我可以将它包含在我的页面中并使用包含的函数和方法.是posibble?

Eli*_*rin 1

我不知道这是否真的可能,但我和你有同样的问题。我正在将 .js 文件放入公共文件夹中。当我尝试添加回声时,一切都出了问题。所以,这是我的解决方案,但您仍然需要使用 npm。

  1. 我将 .js 文件移至resources\assets\js
  2. 打开resources\assets\js\app.js并添加require(./filename.js);
  3. 跑步npm install
  4. 跑步npm run dev
  5. 将新文件的链接更改app.js为我的布局。

这样我就成功地将一个 js 文件保留到我的代码中并使用 laravel-echo。

也许还有另一种解决方案,但我没有尝试。

  1. 启动一个新的 Laravel 项目
  2. 跑步npm install
  3. 修改webpack.mix.js方法如下:

mix.js('resources/assets/js/app.js', 'public/js').extract(['echo']);

  1. 将文件复制public/js/vendor.js到您的实际项目中。

从理论上讲,这就是脚本 echo 需要发挥作用的全部内容。此时,我认为您需要修改/删除一些行以使其在没有 webpack 初始化的情况下工作。