如何从另一个 .js 文件调用一个类?

我对此很陌生,我正在尝试理解 javascript 中的类。因此,我按照在线教程进行操作,一切似乎都工作正常,当我尝试执行与视频中相同的操作时,我现在收到一条错误消息“未捕获的引用错误:MyClassName 未定义”

我有2个文件:

  • 应用程序.js

  • 类.js

class.js中

class MyClass {

    constructor(city, state){

        this.city = city;

        this.state = state;


    }

    message(){

        console.log('Hey!');

    }

}

在app.js中


const myClass = new MyClass();


const btn = document.getElementById('submit');



btn.addEventListener('click', myClass.message());

我得到的错误是“Uncaught ReferenceError:MyClass 未定义”。


我的问题是如何从另一个文件实例化一个类?我知道我做错了什么,但我不知道那是什么。


更新:我的 HTML 文档是这样的。


<body>


    <div class="form-group">

                <button id="submit"  name="submit">Submit</button>

    </div>

    



<script src="app.js"></script>

<script src="class.js"></script>


</body>

</html>

请帮忙,谢谢您的宝贵时间。


小唯快跑啊
浏览 158回答 2
2回答

侃侃无极

我相信它会给你这个错误,因为你在 class.js 文件之前导入了 app.js 文件。首先尝试导入 class.js 然后它应该可以工作。例子:<body>&nbsp; &nbsp; <div class="form-group">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <button id="submit"&nbsp; name="submit">Submit</button>&nbsp; &nbsp; </div>&nbsp; &nbsp;&nbsp;<script src="class.js"></script><script src="app.js"></script></body></html>

大话西游666

由于您链接的 app.js 是在 class.js 之前链接的,因此它会先加载,因此您无法访问 MyClass。切换链接 app.js 和 class.js 的行,它应该可以正常运行。<!DOCTYPE html><html>&nbsp; <body>&nbsp; &nbsp; <div class="form-group">&nbsp; &nbsp; &nbsp; <button id="submit" name="submit">&nbsp; &nbsp; &nbsp; &nbsp; Submit&nbsp; &nbsp; &nbsp; </button>&nbsp; &nbsp; </div>&nbsp; </body>&nbsp; <script type="text/javascript" src="class.js"></script>&nbsp; <script type="text/javascript" src="app.js"></script></html>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript