小编Jib*_*ham的帖子

使用webpack导入angularjs的最佳做法是什么?

你如何一起使用Webpack和AngularJS,以及模板加载和按需获取资源如何?

webpack.config.js为此目的编写良好的文件的一个例子将非常感谢.

此处显示的所有代码段都可以在此github仓库中访问.代码已经从这个packetloop git repo中慷慨地改编了.

webpack.config.json

var path = require('path');
var ResolverPlugin = require("webpack/lib/ResolverPlugin");

var config = {
  context: __dirname,
  entry: ['webpack/hot/dev-server', './app/app.js'],
  output: {
    path: './build',
    filename: 'bundle.js'
  },
  module: {
    loaders: [{
      test: /\.css$/,
      loader: "style!css-loader"
    }, {
      test: /\.scss$/,
      loader: "style!css!sass?outputStyle=expanded"
    }, {
      test: /\.jpe?g$|\.gif$|\.png$|\.svg$|\.woff$|\.ttf$/,
      loader: "file"
    }, {
      test: /\.html$/,
      loader: "ngtemplate?relativeTo=" + path.join(__dirname, 'app/') + "!raw"
    }]
  },
  // Let webpack know where the module folders are for bower and …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs webpack

50
推荐指数
2
解决办法
3万
查看次数

通过Iframe上传Amazon S3

叹了口气,我们回到了这一点.我可以轻松地在任何体面的浏览器上使用CORS直接将文件上传到我的AWS S3存储桶.但是(它即将到来),随着IE我不得不回到Iframes.轻松,设置一个隐藏的Iframe,创建一个表单,将其目标设置为Iframe name/id,提交表单.如果上传成功,Iframe将被重定向到我指定的网址,我可以访问我需要的任何内容.但是如果发生错误,由于Iframe现在位于AWS域上,我将无法访问错误的XML内容.事实上,我甚至不知道发生了错误.

我已经看到互联网上的勇敢的人谈论托管一个html文件,在要上传文件的同一个桶上,然后使用postMessages路由Iframe内容,或类似的东西.

有人可以向我解释如何实现这个神话般的解决方案吗?Blueimp的jQuery文件上传程序似乎解决了这个问题,但是上帝的代码是如此jQueryified,我无法得到它的要点.

编辑清晰

  1. IE <10没有FileReader API.
  2. 由于1,我无法使用XDomainRequest将文件发送到S3
  3. 因此,使用iframe并将其与完整表单一起发布到S3
  4. 如果成功,AWS会重定向到服务器上的页面,该页面会读取标题,
    然后返回JSONP样式响应,该响应可由客户端上的脚本读取(重定向页面可由
    我指定).
  5. 如果出错,我现在所能做的就是等待超时到期,然后控制台记录
    一个IFRAME ID,然后弹出警报,以便用户可以按ID查询iframe,
    读取DAMN XML内容,图超出AWS指定的错误,然后重试(我是讽刺...)

javascript iframe upload amazon-s3

22
推荐指数
1
解决办法
4568
查看次数

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

Requirejs - 版本控制

快速注释 - 通过版本控制我的意思是出于缓存破坏的目的.在脚本请求结束时添加查询参数的常见做法并不适用于所有浏览器.到目前为止,我发现的最简单,最混乱的方法是对整个部署文件夹名称进行版本控制.

-- scripts.v1
-- scripts.v2
Run Code Online (Sandbox Code Playgroud)

但是这非常混乱并且部署时间也很长(我使用S3作为我的cdn).有没有人知道另一种方法呢?

编辑

看来,我还不是很清楚.让我更明确一点.

我在我的网站上使用requirejs.它是一个非常JavaScript的应用程序,经常更新和迭代.现在有了requirejs,我能够可靠地确保浏览器提供最新版本的唯一方法是对我的整个部署文件夹名称(javascript)进行版本化并再次将整批文件上传到S3.然后我使用该data-main方法设置项目的基本路径.

由于许多原因,这非常麻烦.即使代码更改只是几行,也必须重复整个过程.还有其他一些不错的方法让requirejs知道文件有版本吗?如同,如果我打电话

require(["superImportantJSFile"], function(){})
Run Code Online (Sandbox Code Playgroud)

它会知道当前的版本是superImportantJSFile.v4.js什么或类似的东西.

我希望我现在更清楚了.关于社区如何做到这一点的任何建议?我很确定这必须是一个常见的场景,但我还没有找到一个好的解决方案

javascript requirejs

13
推荐指数
1
解决办法
3520
查看次数

风暴 - 主管在重启时崩溃

这是一个让我疯狂的问题.我在本地局域网上运行一台机器Storm实例.我目前正在运行v0.9.1-incubating发布版本(来自Apache Incubator站点.问题只是我的storm supervisor进程在每次重启后都拒绝启动.修复非常简单,从storm本地目录中删除和文件夹并重新运行该过程;事情运行hunky dory然后直到下次重启.supervisorworkers

我提供了一些我认为可能与调试此问题相关的信息.如果需要,请询问更多,但只是帮我解决一下.

PS:我是否运行拓扑并不重要.

  1. Zookeeper版本:3.4.5
  2. 风暴版:0.9.1孵化(使用Netty运输)
  3. Storm和Zookeeper都在同一台机器上运行.
  4. supervisord版本:3.0b2
  5. 操作系统:Ubuntu 12.04 LTS
  6. 处理器:AMD Phenom(tm)II X6 1055T处理器×6
  7. RAM:5.6 GiB

主管配置

[program:zookeeper]
command=/path/to/zookeeper/bin/zkServer.sh "start-foreground"
process_name=zookeeper
directory=/path/to/zookeeper/bin
stdout_logfile=/var/log/zookeeper.log        ; stdout log path, NONE$
stderr_logfile=/var/log/err.zookeeper.log        ; stderr log path, $
priority=2
user=root


[program:storm-nimbus]
command=/path/to/storm/bin/storm nimbus
user=root
autostart=true
autorestart=true
startsecs=10
startretries=2
log_stdout=true
log_stderr=true
stderr_logfile=/var/log/storm/nimbus.err.log
stdout_logfile=/var/log/storm/nimbus.out.log
logfile_maxbytes=20MB
logfile_backups=2
priority=10


[program:storm-ui]
command=/path/to/storm/bin/storm ui
user=root
autostart=true
autorestart=true
startsecs=10
startretries=2
log_stdout=true
log_stderr=true
stderr_logfile=/var/log/storm/ui.err.log
stdout_logfile=/var/log/storm/ui.out.log
logfile_maxbytes=20MB
logfile_backups=2 …
Run Code Online (Sandbox Code Playgroud)

apache-storm

11
推荐指数
1
解决办法
3242
查看次数

响应式环球免税店

我正在尝试在其响应模式下使用此插件Galleria,这基本上意味着当窗口重新调整大小时,它将根据其容器大小重新绘制自己.我提供的链接上的演示显示了一个非常好的例子.您可以看到,在调整窗口大小时,整个图库会相应调整.现在我的问题是,除非为用作容器的DOM元素指定了高度,否则插件不会让我初始化库.这意味着,我必须编写大量的javascript代码来响应窗口调整大小 - 它破坏了它具有响应模式的重点 - 但在上面的网站中,我无处可寻找指定的显式高度.有人可以向我解释我哪里出错了吗?

javascript jquery galleria

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

JavaScript闭包中的垃圾收集

我需要一些帮助来解决它是如何工作的(或者就此而言).

  1. 在网页中,我为节点创建了一个click事件监听器.
  2. 在监听器中,我创建了一个随机类的实例,它将节点设置为自身内的属性.所以,如果var classInstance是实例,我可以像访问节点那样访问节点classInstance.rootNode.
  3. 当监听器触发时,我设置了一个ajax请求,保持classInstance关闭状态并传递ajax响应classInstance并使用它来修改其rootNode样式或内容或其他内容.

我的问题是,一旦我做与classInstance假设没有别的引用它,本身,它拥有闲来无事在自己的关闭,将它的垃圾收集处置?如果没有,我该如何标记它?

javascript closures garbage-collection

6
推荐指数
1
解决办法
3356
查看次数

获取光标在选择中的位置 - 相对于文档

样品

这是可编辑 div 中的一些文本.这可以跨越多行,段落等等.我想要做的是在这里找到插入符号的相对位置.意思是,相对于div或文档,插入符号位于{top:'5px',left:'250px'}.

我们的想法是提供可选的下拉菜单.这可能是直接的,还是我必须根据div line-height, padding,.. + caret position等方式制定解决方案?

javascript caret

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