Javascript paperjs:如何将我的代码分割成多个文件?

Javascript paperjs:如何将我的代码分割成多个文件?,javascript,paperjs,Javascript,Paperjs,我已经在paperjs上玩了一段时间了,我已经在一个文件中编写了1500多行代码,我真的很想将其拆分成多个文件,以使其更具可读性。 起初,我认为我可以制作一个library.js文件,将其放入public/scripts目录,并使用加载到我的页面中。但是,调用保留在library.js中的任何函数都会产生如下错误: ReferenceError:未定义路径 那么,我如何在外部文件中存储函数,并以正确的方式使用它们呢?您之所以会出现此错误,是因为您没有将标记类型转换为“text/paperscri

我已经在paperjs上玩了一段时间了,我已经在一个文件中编写了1500多行代码,我真的很想将其拆分成多个文件,以使其更具可读性。 起初,我认为我可以制作一个
library.js
文件,将其放入
public/scripts
目录,并使用
加载到我的页面中。但是,调用保留在
library.js中的任何函数都会产生如下错误:

ReferenceError:未定义路径


那么,我如何在外部文件中存储函数,并以正确的方式使用它们呢?

您之所以会出现此错误,是因为您没有将标记类型转换为
“text/paperscript”
,而不是像加载paperjs那样的
“text/javascript”

试着这样做:

<!-- Load the Paper.js library -->
<script type="text/javascript" src="paper-full.min.js"></script>
<!-- Load external PaperScript and associate it with myCanvas -->
<script type="text/paperscript" src="library.js" canvas="myCanvas"></script>

<body>
    <canvas id="myCanvas" resize></canvas>
</body>


在库之前加载paperjs吗?我在库之前和之后都尝试过,实际上,它会产生相同的错误。库代码的结构如何?作为一次尝试,目前为止我只在其中添加了一个函数。因此,我的
library.js
只包含
函数fooBar(){//dosomething}
,如果这有意义的话。这是否允许我将代码分割成不同的文件,并将它们全部加载到同一画布中?我觉得,如果我想以这种方式加载多个脚本,并将它们全部分配给
canvas=“myCanvas”
,我最终只会覆盖而不是扩展。那个评估是正确的吗?好吧,那很奇怪,因为它肯定仍然会给我错误。所以一个很大的区别是错误的类型。以前是“ReferenceError:Path未定义”,而现在是“ReferenceError:fooBar未定义”。我同意您的观点,这不是很直观,但您需要使用类似于
window.fooBar=fooBar;
的东西使您的函数全局化,然后使用
window.fooBar()调用您的函数
,多亏了。还有一个问题您可以调查。