如何在没有node.js/npm的情况下在本地使用Angular2、systemjs?

2023-11-23

这是带有 angular-alpha35 的 index.html:

    <html>
    <head>
        <meta charset="UTF-8">
        <base href="/">
        <title>APP Ang2</title>
        <script src="scripts/traceur-runtime.js"></script>
        <script src="https://jspm.io/[email protected]"></script>
        <script src="scripts/bundle35/angular2.dev.js"></script> 
        <script src="scripts/bundle35/router.dev.js"></script>
        <meta name="viewport" content="width=device-width,initial-scale=1" />
        <link rel="stylesheet" type="text/css" href="css/main.css">
    </head>
    <body>

        <app>Loading...</app>

        <script>System.import('app').catch(console.log.bind(console));</script>

    </body>
    </html>

如果有互联网连接并且可以加载 system.js,它就可以正常工作。如果我尝试获取 system.js 的本地副本,如下所示:

<script src="scripts/[email protected]"></script>

然后什么都不起作用,直到我把rx.js在根文件夹中并将此行放在文件末尾:

    <script src="scripts/es6-module-l[email protected]"></script>
</body>
</html>

然后 System.js 工作正常,但在这种情况下, angular2 绑定存在一个奇怪的问题。直到我与页面进行一些交互(提交表单、打开选择、使某些 div 更改其尺寸,即使是简单的隐藏等)时,它们才起作用。一旦页面发生变化,所有绑定就会开始工作,页面就会复活。

如何在没有 Node.js 且没有互联网连接的情况下使所有这些在本地工作?


您应该包含 Angular 2 的 sfx 版本,如下所示:

<script src="https://code.angularjs.org/2.0.0-alpha.32/angular2.sfx.dev.js"></script>

请注意,它是一个独立的 js 文件,您可以在本地下载。

检查我在 github 中制作的示例项目:

https://github.com/alfonso-presa/angular2-es5-sample

编辑:检查这个SO问题以获取有关sfx含义的更多说明:angular.dev.js 和 angular.sfx.dev.js 之间的区别

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在没有node.js/npm的情况下在本地使用Angular2、systemjs? 的相关文章

随机推荐