在angular2 / webpack

时间:2016-10-27 12:11:09

标签: angular webpack webshim

我制作了这个“小部件”,客户可以在angular2上加载他们的网站。 e.g。

<some-name config="clientcode"></some-name>

还有一些设置等,但这些不相关,从原生元素中提取值,所有似乎都可以在古老的浏览器上正常工作。

然而,一个客户使用所有这些花哨的polyfills /垫片(没有检查他们是否像那样:

Object.extend(Function.prototype, {
argumentNames: function() {
    var a = this.toString().match(/^[\s\(]*function[^(]*\(([^\)]*)\)/)[1].replace(/\s+/g, "").split(",");
    return 1 != a.length || a[0] ? a : []
},
bind: function() {
    if (2 > arguments.length && Object.isUndefined(arguments[0]))
        return this;
    var a = this
      , b = $A(arguments)
      , c = b.shift();
    return function() {
        return a.apply(c, b.concat($A(arguments)))
    }
}, ... });

这些与我的angular2小部件冲突,尤其是这个片段的最后4行(尽管不是最后一行)。

有趣的部分是,这是所有在RC5上工作,我不得不滚动 回到。有谁知道我是否可以强制angular2 / webpack包含那些垫片来覆盖我的客户端?并确保它始终嵌入到现有网站中?它会引起一些膨胀,但在这种情况下,这不是一个大问题,因为它是人们每月或每周一次使用的网站/服务。

1 个答案:

答案 0 :(得分:1)

如果该功能已存在,通常会填充(特别是x = linspace(0,1,1000); Pos = [1 2 3 5 7 8]/10; Hgt = [4 4 2 2 2 3]; Wdt = [3 8 4 3 4 6]/100; Gauss = zeros(numel(Pos),numel(x)); for n = 1:numel(Pos) Gauss(n,:) = Hgt(n)*exp(-((x - Pos(n))/Wdt(n)).^2); end PeakSig = sum(Gauss) - exp(sum(Gauss))/10; % get the peaks: [p,xmax] = findpeaks(PeakSig,x); maxsrt = sortrows([xmax;p].',-2); [pn,xmin] = findpeaks(-PeakSig,x); minsrt = sortrows([xmin;-pn].',2); % plotting: pks = [[xmin xmax];[-pn-0.2 p+0.2];[zeros(1,numel(pn)) ones(1,numel(p))]].'; blue = [0 0.447 0.741]; ax = axes; plot(ax,x,PeakSig) hold on gscatter(pks(:,1),pks(:,2),pks(:,3),blue,'^v') hold off ax.Children(1).MarkerFaceColor = blue; ax.Children(2).MarkerFaceColor = blue; text(maxsrt(:,1),maxsrt(:,2)+0.2,num2str((1:numel(p)).'),'FontSize',14,... 'VerticalAlignment','bottom','HorizontalAlignment','center') text(minsrt(:,1),minsrt(:,2)-0.2,num2str((1:numel(pn)).'),'FontSize',14,... 'VerticalAlignment','top','HorizontalAlignment','center') ylim([-10 3]); legend off grid on title('Signal Peak Widths') )。

如果问题可以缩小到core-js,可以在将polyfills添加到项目之前将其删除:

bind