我正在尝试在项目上使用this repo,因为它的实现将使我像photoshop一样通过连接点绘制多边形。

我可以与Django一起使用的安装包括缩小版

<script src="/static/js/CanvasSpliner.min.js"></script>


然后在它下面使用它

<script>
    $(function() {
        var cs = new CanvasSpliner("can", 300, 300);
    });
</script>


但这会引发此错误

color-editor:89 Uncaught TypeError: CanvasSpliner is not a constructor
    at HTMLDocument.<anonymous> (color-editor:89)
    at k (jquery.js:15)
    at Object.fireWith [as resolveWith] (jquery.js:15)
    at Function.ready (jquery.js:15)
    at HTMLDocument.D (jquery.js:15)


如果单击HTML模板中的color-editor:89行,则是上面脚本中的这一行

var cs = new CanvasSpliner("can", 300, 300);

最佳答案

CanvasSpliner替换为CanvasSpliner.CanvasSpliner

var cs = new CanvasSpliner.CanvasSpliner("can", 300, 300);


在chrome控制台中玩耍时发现了这一点。

用法也可以在源代码的demo中找到。也许这只是readme.md中的一个错误。



<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/jonathanlurie/canvasSpliner@master/dist/CanvasSpliner.min.js"></script>

<script>
    $(function() {
        var cs = new CanvasSpliner.CanvasSpliner("can", 300, 300);
    });
</script>

关于javascript - 未捕获的TypeError:CanvasSpliner不是构造函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54939901/

10-10 16:38