Tag: laravel

为什么webpack吐出10000多行?

在使用默认configuration运行npm install之后,我通过默认的laravel设置使用webpack。 在webpack.mix.js中,我有以下几点: mix.js('resources/assets/js/init.js', 'public/js'); 而resources/assets/js/init.js包含以下内容: (function ($) { $(function () { $('.button-collapse').sideNav(); }); // end of document ready })(jQuery); 那么为什么webpack会为这个文件发出高达10000多行?!: 这是输出的要点 。 我完全误解了webpack,或者是一个laravel或webpack的默认混乱? 我基本上期望JS的副本,因为npm run dev不应该缩小,它没有任何ES6语法…那么这是什么? 如果我将相应的行添加到混合中,同样的事情可以完美地将scss编译为css。

RESTful APIdevise:令牌authentication

我正在devise一个符合标准的RESTful API。 每个资源都有自己的终点。 我的资源中没有动词 我们使用JWT进行无状态客户端身份validation。 我怎样才能仍然使用auth路由的语义devise? 例如 /auth/login /auth/logout /auth/reset /auth/forgot 这些端点包含动词…我不能锻炼如何最好地命名auth资源。

mix.options不是一个函数

我一直在尝试为我的Laravel应用程序运行PurifyCSS,但是每当我从命令行运行'gulp'时,仍然会收到“mix.options不是函数”错误。 mix.styles工作得很好 我知道这个问题发生在很多人身上,因为他们使用的是旧版本的Laravel混合,但我相信我已经更新了它(例如npm laravel-mix -v返回“3.10.10”) 有什么build议? 谢谢 var elixir = require('laravel-elixir'); elixir(function(mix) { mix.options({ purifyCss: true }); mix.styles([ 'bootstrap.css', 'cc.css' ]); });

XAMPP + Laravel + AdminLTE

好吧,当我发现pipe理员Dash Laravel模板将整个AdminLTE模板连接到Laravel 5.4时,包括示例页面,数据库表格等,只是为了在我的本地XAMPP上运行时碰到一个障碍服务器… 我按照说明和: 在Z:/xampp/htdocs/目录下通过laravel new test3创build了一个新的Laravel项目。 下载Admin-Dash文件并将其粘贴到新的项目文件夹(test3) 跑php artisan migration 运行npm install 编辑我的.env文件指向正确的文件夹APP_URL=http://localhost/test3 。 这导致了这一点: 假设提供的站点如/login/或/register/和CSS / JSfunction似乎都不起作用,很可能是由于模板在http://localhost/dist/寻找dist文件夹,在Z:/xampp/htdocs/test3/public/dist 。 如何更改模板中的文件夹目标? 感谢任何帮助,谢谢! A2K 编辑 如前所述,css / js文件夹位置存在问题。 我已经在Z:\xampp\htdocs\test3\resources\views\layouts了Admin / Guest / Common的刀片,并将它们调整为如下所示: 例如。 jQuery的 <!– jQuery 2.2.3 –> <script src="/plugins/jQuery/jquery-2.2.3.min.js"></script> to <!– jQuery 2.2.3 –> <script src="/test3/public/plugins/jQuery/jquery-2.2.3.min.js"></script> 这似乎最终解决了布局问题,但是当点击任何链接,例如。 /register/它指向我http://localhost/register/而不是http://localhost/test3/register/ 。 它不应该有必要乱用主刀片configuration,这让我想知道是否有一个主pipe设置的pipe理代表path,我失踪了? 编辑2 由于CSS / JS问题是通过利用{{ […]

Socket.IO TypeError:无法读取未定义的属性“广播”

我用socket.io使用redis: var io = require('socket.io')(6001); var Redis = require('ioredis'), var redis = new Redis(); redis.psubscribe('*'); redis.on('pmessage', function (pattern, channel, message) { message = JSON.parse(message); io.sockets.connected[message.data.senderID].broadcast.emit(channel + ':' + message.event, message.data); }); 我收到这个: TypeError:无法在Redis中读取未定义的属性“广播”。 (Redis.exports.returnReply)上的Redis.emit(events.js:216:7)处的emitThree(events.js:135:13)处的C:\ socket \ htdocs \ project \ server.js:12:46。 。 怎么了? console.log(message.data.senderID); 打印插口确定。 谢谢..

使用npm包含令牌字段包

我试图包括与npm令牌包laravel。 首先我添加了以下行到package.json依赖关系: "tokenfield": "^0.8.2", 这导致节点模型下的tokenfield文件夹。 然后我添加了以下几行webpack.mix.js: .copy('node_modules/tokenfield/dist/tokenfield.js', 'public/js') .copy('node_modules/tokenfield/dist/tokenfield.css', 'public/css') 这导致我在我的公用文件夹中有tokenfield javascript和css。 现在我只是在我的视图中包括这些: <link href="{{ asset('css/app.css') }}" rel="stylesheet"> <script src="{{ asset('js/tokenfield.js') }}"></script> 但是这个工作。 我得到以下错误: Uncaught ReferenceError: module is not defined at tokenfield.js:1 当我看着tokenfield.js它看起来像一个常规的JavaScript文件,它开始于: module.exports = 那么我在这里错过了什么?

如何使用Laravel 4将对象插入到MongoDB文档中

我是Laravel MongoDB的新手我想在这里提一个问题,我的Mongo文档的大纲应该是 { _id:****, subscriptions: [{list_id: "14Q3"}, {list_id: "153"}], offers: [ { targetURL: "www.qwerty.com", title: "25% discount" }, { targetURL: "www.abcd.com", title: "55% discount" } ], } 我已经使用下面的代码来插入列表ID(成功)。 DB::connection('mongodb')->collection('subscribers')->insert(array( '_id' => $subscriber->device_id, 'subscriptions' => array('list_id' => $subscriber->list1_id), )); 但是,当我尝试推另一个list_id作为下一个对象显示错误。 我使用下面的代码进行推送 DB::connection('mongodb')->collection('subscribers') ->push('subscriptions', array('list_id' => $subscriber->list1_id)); 我不知道我的代码是对还是错。 我需要将数据存储为上面给出的轮廓。 这是我的实际问题。 请纠正我…. 我的控制器是给出如下,我为每个订户创build新的集合。 问题是第二个“如果”的声明 public function store() { […]

在Laravel Forge服务器上通过地址访问Node.js应用程序

我有我的Node.js应用程序在Laravel Homestead上正常工作,但现在需要将其移动到服务器。 我正在使用Laravel Forge进行服务器configuration。 服务器已经安装了Node和所需的软件包。 当本地运行时,我可以使用Homestead的http://192.168.10.10:3000来连接。 我的服务器上的地址是什么,如何保持节点应用程序运行? 当我通过SSH连接时,我可以运行它,我可以看到它正在输出接收到的事件。 但是,我怎么连接客户端呢? 我试过我的服务器的IP和域名,但没有运气。 一旦连接,我怎么能保持节点应用程序运行,所以我不需要有一个开放的SSH会话? 非常感谢, 山姆

gulp命令没有在Laravel框架中结合JavaScript文件。 给出奇怪的错误

我在Laravel框架中有以下的elixir函数: var elixir = require('laravel-elixir'); elixir(function(mix) { mix.sass('app.scss'); mix.styles(['bootstrap.min.css','app.css'], null, 'public/css'); mix.scripts(['bootstrap.min.js','jquery.min.js'], null, 'public/js'); mix.version('public/css/all.css'); }); null参数应该自动创buildpublic / css文件夹中的all.css和public / js文件夹中的all.js。 虽然CSS文件组合正确,我得到以下错误的JavaScript文件: [12:53:30] 'scripts' errored after 952 ms [12:53:30] Error: Cannot find module '../internal/assignWith' at Function.Module._resolveFilename (module.js:337:15) at Function.Module._load (module.js:287:25) at Module.require (module.js:366:17) at require (module.js:385:17) at Object.<anonymous> (/htdocs/t2ci/node_modules/laravel-elixir/node_modules/gulp-babel/node_modules/babel-core/node_modules/lodash/object/assign.js:1:80) at Module._compile (module.js:435:26) at Object.Module._extensions..js (module.js:442:10) […]

Socket.io – 广播给不同权限级别的用户的策略

使用socket.io将事件和数据广播给其他监听器是很简单的,每个人都可以看到数据。 但是,当每个用户只能看到属于他们的数据时,有没有一些策略可以使用? 例如,我们有一个订单系统。 在仪表板上,一些用户可以根据访问级别查看所有订单。 所以如果一个订单被一个用户更新,我可以把这个事件广播给所有其他的用户,而不必为仪表盘上的每个窗口检索新的数据。 所以也许一个例子就像客户端的socket.send('ordersUpdated', data) ,我认为节点服务器可以捕获它,并将数据发送到其他套接字侦听ordersUpdated事件。 但是用户只能看到他们自己的订单的情况呢? 我不能向他们广播相同的数据,因为这个级别的每个用户只能看到他们自己的数据。 如果他们的一个订单是由一个可以看到所有订单的用户修改的呢? 他们的仪表板也需要更新,但他们不能接收同样的广播数据。 有什么特别的方法可以解决这个问题吗? 一个想法,虽然我认为不是一个好主意,但只是发送一个事件,说一些更新的事情,这将导致他们从服务器重新获取数据。 为了提供更多的细节,我也使用Angular和Laravel。