如何使用require.js的retina.js?

时间:2016-09-27 19:42:12

标签: javascript requirejs amd

有没有办法将retina.js v2.0用作require.js的AMD模块?

我试过这样做:

main.js文件:

paths: {
  retina: 'path/to/retina'
}
shim: {
   retina : {
     exports: "retina"
   }
}

requirejs(['retina']);

HTML文件 - 包含源到低分辨率图像的常规图像标记。 Retina.js通过require.js加载,但图像不会换成@ 2x图像。 这个解决方案不起作用。

尝试2 - 尝试没有垫片 - 它不起作用。

尝试3 - 将data-rjs="path/to/image@2x.png"添加到图片代码 - 它无法正常工作

我做错了吗?

1 个答案:

答案 0 :(得分:0)

经过一番挖掘,我找到了答案

必须以这种方式定义垫片:

shim: {
  "retina" : {
    exports: "retinajs"
  }
}

当您需要此脚本时,您必须这样做:

requirejs(['retina'], function(retina) {
  retina();          
});

仅对定义了data-rjs属性的图片

<img src="image.png" data-rjs="image@2x.png" />