小编spa*_*33z的帖子

用Webpack公开jquery插件

我正在尝试使用Webpack的bootstrap- daterangepicker.在我的视图文件中,我有以下内容:

define(function (require) {
    require('bootstrap-daterangepicker');

    $('#daterangepicker').daterangepicker({ ... });
});
Run Code Online (Sandbox Code Playgroud)

并在webpack.config.js:

plugins: [
    new webpack.ProvidePlugin({
        $: 'jquery',
        jQuery: 'jquery',
        'window.jQuery': 'jquery'
    })
]
Run Code Online (Sandbox Code Playgroud)

这导致了daterangepicker is not a function.我看了一下daterangepicker.js,似乎$.fn.daterangepicker没有正确导出.我该怎么做?我曾尝试使用imports-loader强制导入jQuery,但这没有帮助.

webpack

14
推荐指数
1
解决办法
6328
查看次数

在Laravel 5中更改存储路径

我想改变Laravel 5.1使用的存储路径/home/test/storage.这样做的好处是这些文件不会存储在存储库中,我认为这相当丑陋.在Laravel 4中,这非常简单bootstrap/paths.php.

在Laravel 5中,这可以通过使用$app->useStoragePath('/path/')来实现bootstrap/app.php.但是,我想用config选项定义存储路径,比如$app->useStoragePath(config('app.storage_path').config选项调用环境变量或返回默认位置.

这样做会产生一个Uncaught exception 'ReflectionException' with message 'Class config does not exist'; 这是有道理的,因为此功能尚未加载.

我尝试在启动后设置存储路径:

$app->booted(function () use ($app) {
    $app->useStoragePath(config('app.storage_root'));
});
Run Code Online (Sandbox Code Playgroud)

这没有改变.我也试过将它直接绑定到path.storage:

$app->bind('path.storage', function ($app) {
    return config('app.storage_root');
});
Run Code Online (Sandbox Code Playgroud)

最后一个选项部分起作用; 视图缓存现在放在正确的位置,但日志仍在旧位置.

php laravel laravel-5.1

11
推荐指数
4
解决办法
2万
查看次数

使用Webpack在devtools中进行调试

使用require.js,只需输入以下内容即可轻松调试Chrome的DevTools中的模块:

require('my-module').callThisFunction()
Run Code Online (Sandbox Code Playgroud)

使用Webpack这是不可能的,因为它通过CLI编译模块而不导出require.

window.webpackJsonp是全局公开的,所以我想我可以找到模块ID并像这样调用它:webpackJsonp([1],[])但不幸的是这会返回undefined.

还有任何变通方法仍然能够像require.js一样进行调试吗?

javascript webpack

8
推荐指数
1
解决办法
3289
查看次数

Electron 的 IPC 模块的更快替代品

我正在编写一个 Electron 应用程序,它需要每大约 25 毫秒从渲染器向一个单独的 Node 进程发送相当多的数据,该进程在主进程中使用本机fork模块启动。

数据如下所示:[{ x: int, y: int }, ...],其中包含大约 1000 个点(为了简洁起见,比此处显示的信息多一点)。

我开始ipc.send在渲染器进程中使用,但它有相当严重的性能损失:每个ipc.send.

因此,我考虑ws在分叉的 Node 进程中使用npm 包启动 WebSocket ,并使用 JSON 通过 WebSocket 发送数据。这好多了。甚至通过使用avsc而不是解析为 JSON 来进一步改进它(从 ~4ms 到 ~1ms)。

所以 WebSocket 解决方案运行良好,但有一个问题:它需要找到一个空闲端口并通过本地网络。在 macOS 中,这也会触发一个对话框:

您希望应用程序“x.app”接受传入的网络连接吗?

如果可能的话,这个对话框与使用本地网络的技巧相结合是我想避免的。

我的问题是:有没有人知道将数据发送到 Electron 中不通过本地网络的其他进程的更好解决方案?

performance electron

7
推荐指数
1
解决办法
1547
查看次数

接受Laravel 4路由中的编码URL

我正在开发一个Laravel 4 Beta 5的网站,我正在尝试将编码的URL传递给路由器.问题是,编码的URL中有百分比等,因此它被Laravel阻止.URL使用Javascript函数进行编码encodeURIComponent().

有没有办法覆盖Laravel所以我可以在我的路线中使用任何角色?

这是我目前的代码:

Route::get('add/{encoded_url}', function($encoded_url)
{
    return 'The URL is: '.rawurldecode($encoded_url);
});
Run Code Online (Sandbox Code Playgroud)

我试图通过追加来覆盖Laravel where('encoded_url', '*reg-ex*');,但它没有用(我对reg-ex,顺便说一下我不是很好).

routes laravel laravel-4

3
推荐指数
1
解决办法
4711
查看次数

返回AngularJS中函数的承诺值

我在输出promise函数的值时遇到问题.

$scope.getTeacher = function(teacherAbr) {
  var promise = dataService.getTeacher(teacherAbr);

  var testje = promise.then(function(payload) {
    return payload;
  });

  return testje; // outputs an d object, not the direct payload values
};
Run Code Online (Sandbox Code Playgroud)

该控制器功能的输出如下: 功能输出

但是,当我这样做的testje.$$state时候会回来undefined.我该如何输出value对象?我无法payload在新的$ scope中输出变量,因为这些数据是动态的.

以下是Plunker简化版本.

angularjs

2
推荐指数
1
解决办法
3325
查看次数