Javascript Paperjs-访问多个paperscript文件中的类
我希望在一个Paperscript范围内使用多个.js文件,如下所示:Javascript Paperjs-访问多个paperscript文件中的类,javascript,paperjs,Javascript,Paperjs,我希望在一个Paperscript范围内使用多个.js文件,如下所示: <script type="text/paperscript" src="block.js" canvas="canvas"></script> <script type="text/paperscript" src="main.js" canvas="canvas"></script> function Block(point) { // create a Path.R
<script type="text/paperscript" src="block.js" canvas="canvas"></script>
<script type="text/paperscript" src="main.js" canvas="canvas"></script>
function Block(point) {
// create a Path.Rectangle here
}
function onMouseDown(event) {
var myBlock = new Block(event.point);
// do extra work here
}
在main.js中,我想创建Block类的一个实例,如下所示:
<script type="text/paperscript" src="block.js" canvas="canvas"></script>
<script type="text/paperscript" src="main.js" canvas="canvas"></script>
function Block(point) {
// create a Path.Rectangle here
}
function onMouseDown(event) {
var myBlock = new Block(event.point);
// do extra work here
}
但是,我得到以下错误:
Uncaught ReferenceError: Block is not defined - in main.js
但是,如果我在Block.js中实例化Block类,它就会像预期的那样工作
如何在同一范围内使用多个paperscript js文件,并在另一个文件中访问一个文件中定义的类
我使用paperjs-v0.9.25并使用Chrome进行测试。您有三种选择:
window.Block=function(point){…}
paper._execute = function(Rectangle,Path) {
function Block(point) {
var r = new Path.Rectangle(point, [100, 100]);
r.strokeColor = 'black';
return r;
}
var b = new Block([100, 100]);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJza...JdfQ==
}
因为块的声明在函数中,所以它的定义是该函数的局部定义