0

Uncaught SyntaxError: Unexpected token < sencha-touch.js:8618

未捕获的错误:即使文件已加载,也未声明以下类:“Ext.Title”。请检查其相应文件的源代码是否有可能的拼写错误:Object.onFileLoaded (sencha-touch.js:8618) 处的“touch/src/Title.js”。(sencha-touch.js:3267) 在 HTMLScriptElement.onLoadFn (sencha-touch.js:8275)

4

1 回答 1

1

第一个错误表示某个文件已加载但不包含预期的 JSON 或 JavaScript。相反,该文件包含 HTML 或 XML。

第二个错误表示该文件touch/src/Title.js不包含Ext.define('Ext.Title', ...).

如果以下情况成立,则会连续发生这两个错误:

  • 您的应用程序在某处使用Ext.Title
  • 你没有添加Ext.Title到你的要求部分,
  • 该文件touch/src/Title.js在应用程序目录中不存在并且
  • 如果未找到文件,提供应用程序的 Web 服务器会提供 HTML 错误页面。

touch/src/Title.js仅当定义 ( Ext.define('Ext.Title') 未编译到 app.js 中时,您的应用程序才会尝试加载文件。

通常,根本问题是您requires在文件中缺少指令。这些requires指令在编译时进行评估,并将组件添加到 中app.js,因此您的应用程序不会尝试Title.js在运行时加载。如果您将需求添加到使用它的组件中:

Ext.define('MyOwnComponent',{
    requires: ['Ext.Title'], // <- add it here
    constructor: function() {
        Ext.create('Ext.Title'); // <- if it is used e.g. here
    }
});

并再次编译您的应用程序,您应该一切顺利。如果你不知道它在哪里使用,你可以将它添加到你的 Application.js 中,它也有一个 requires 部分:

Ext.define('MyApplication',{
    extend: 'Ext.app.Application',
    requires: ['Ext.Title'], // <- add it here
    stores:[],
    ...
});
于 2017-07-03T11:52:46.940 回答