Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 让cocos2d-html5与visual studio协同工作_Javascript_Visual Studio 2012_Cocos2d Html5 - Fatal编程技术网

Javascript 让cocos2d-html5与visual studio协同工作

Javascript 让cocos2d-html5与visual studio协同工作,javascript,visual-studio-2012,cocos2d-html5,Javascript,Visual Studio 2012,Cocos2d Html5,我发誓处理IDE问题是最糟糕的。我想做的就是用一些代码把我的手弄脏,但是做不到 正如标题所示,我正试图让Cocos2d-HTML5在VisualStudio2012中工作。我已经将Cocos2d-HTML5文件复制到我的web目录中,并学习了一些教程,但是我在jsloader.js方面遇到了问题 在下面的更改之前,它找不到jsloader.js: FROM: `engineDir: '../cocos2d/',` TO: `engineDir: '../GridWars/coco

我发誓处理IDE问题是最糟糕的。我想做的就是用一些代码把我的手弄脏,但是做不到<代码>

正如标题所示,我正试图让Cocos2d-HTML5在VisualStudio2012中工作。我已经将Cocos2d-HTML5文件复制到我的web目录中,并学习了一些教程,但是我在
jsloader.js
方面遇到了问题

在下面的更改之前,它找不到
jsloader.js

   FROM:  `engineDir: '../cocos2d/',`
   TO:  `engineDir: '../GridWars/cocos2d/'`
Gridwars
是项目的名称

现在它找到了
jsloader.js
,但有一个错误

Unhandled exception at line 117, column 5 in http://localhost:51244/GridWars/cocos2d/platform/jsloader.js

0x800a138f - JavaScript runtime error: Unable to get property 'loadExtension' of undefined or null reference
对于这些代码行:

var d = document;
var c = d.ccConfig;

if (c.loadExtension != null && c.loadExtension == true) {

您使用了哪一版本的Cocos2d-html5

需要在cocos2d.js文件中配置您的设置。您可以在template文件夹中找到此文件

例如:

var c = {

    COCOS2D_DEBUG:2, //0 to turn debug off, 1 for basic debug, and 2 for full debug

    box2d:false,

    chipmunk:false,

    showFPS:true,

    loadExtension:false,    //**Hey, here is the loadExtension.....**

    frameRate:60,

    tag:'gameCanvas', //the dom element to run cocos2d on

    engineDir:'../cocos2d/',

    //SingleEngineFile:'',

    appFiles:[

        'src/resource.js',

        'src/myApp.js'//add your own files in order here

    ]

};

答案贴在他们的网站上。我在听他们的一篇教程,最后在文章的底部找到了我的答案

答复:

cocos2d.js中

查找“
s.c=c

将其更改为“
document.ccConfig=c

main.js中

查找“
config:document.querySelector('#cocos2d-html5')['c'],


将其更改为“
config:document.ccConfig,

v2.2也有类似错误。我发现在cocos2d.js文件中移动一行代码会有所帮助

window.addEventListener('DOMContentLoaded', function () {
    ...
    d.body.appendChild(s);
    document.ccConfig = c;
    s.id = 'cocos2d-html5';
    //else if single file specified, load singlefile
});
删除行:
document.ccConfig=c并将其移动到
窗口之前。addEventListener

例如:


在很大程度上,这就是我的工作。除了我需要更改引擎以包含项目名称,使其看起来像:/cocos2d/您为我指出了正确的方向,但下面是我的答案,解决了这个问题
document.ccConfig = c;

window.addEventListener('DOMContentLoaded', function () {
   // etc
});