所以,我正在构建一个简单的视频编辑器。我使用Fabric.js <script src="/js/fabric.js"></script>
来操作我正在编辑的画布。
我遗漏了它的Serialization和Parser模型,但它仍然使用eval来引发错误:
Uncaught EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "default-src 'self' blob: filesystem: chrome-extension-resource:".
fabric.Canvas(String id)
仍然有效,但形状对象不会(例如new fabric.Rect();
抛出Uncaught TypeError: fabric.Circle is not a constructor
)
这是我的第一个Chrome应用,我不太了解发生了什么。如果有人能帮助我弄清楚如何在这种环境中使用Fabric,那将是最优秀的。
提前致谢。
答案 0 :(得分:2)
Fabric不符合'unsafe-eval'
CSP标准的事实是known issue。
因此,在应用程序或扩展程序中使用它的唯一方法是对其进行沙盒化:在作为沙箱加载的框架中执行所有操作,并使用postMessage
双向传递数据。