nwjs 应用程序中的部分视图
Partial view in nwjs application
我的 NW.js 应用中有以下 html 结构
<div id="nav-header">
<!-- bunch of links -->
</div>
<div id="content"></div>
<div id="footer"></div>
当用户单击 #nav-header
中的 link 时,我正在尝试找到一种方法来 "dynamically change" 或 "load from another html file" 内容 div。我知道在网络应用程序中,这是通过 ajax 完成的,但我不知道如何在 NW.js 桌面应用程序中执行此操作,也找不到有关如何执行此操作的任何线索。
有人可以帮我解决这个问题吗?
您可以像在网络上那样操作..
您可以使用 ajax 并调用本地文件,AngularJS 将是一个易于实施的解决方案。
例如:
项目结构:
- package.json
- index.html
- page1.html
index.html
<html ng-app>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.3/angular.min.js"></script>
</head>
<body ng-init="page = 'page1.html'"> <!-- Default page -->
<div id="nav-header">
<nav>
<a ng-click="page = 'page1.html'">Link 1</a>
<a ng-click="page = 'page2.html'">Link 2</a>
<a ng-click="page = 'page3.html'">Link 3</a>
</nav>
</div>
<div id="content" ng-include="page"></div>
<div id="footer"></div>
</body>
</html>
page1.html
<div>Hello World</div>
当然,如果您要使用 angular,我建议您使用像 Angular UI Router 这样的路由器
但正如您所见,您可以使用任何您知道的可在网络上运行的其他技术来做到这一点,NW.js 仍然是 chrome。
我的 NW.js 应用中有以下 html 结构
<div id="nav-header">
<!-- bunch of links -->
</div>
<div id="content"></div>
<div id="footer"></div>
当用户单击 #nav-header
中的 link 时,我正在尝试找到一种方法来 "dynamically change" 或 "load from another html file" 内容 div。我知道在网络应用程序中,这是通过 ajax 完成的,但我不知道如何在 NW.js 桌面应用程序中执行此操作,也找不到有关如何执行此操作的任何线索。
有人可以帮我解决这个问题吗?
您可以像在网络上那样操作.. 您可以使用 ajax 并调用本地文件,AngularJS 将是一个易于实施的解决方案。
例如:
项目结构:
- package.json
- index.html
- page1.html
index.html
<html ng-app>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.3/angular.min.js"></script>
</head>
<body ng-init="page = 'page1.html'"> <!-- Default page -->
<div id="nav-header">
<nav>
<a ng-click="page = 'page1.html'">Link 1</a>
<a ng-click="page = 'page2.html'">Link 2</a>
<a ng-click="page = 'page3.html'">Link 3</a>
</nav>
</div>
<div id="content" ng-include="page"></div>
<div id="footer"></div>
</body>
</html>
page1.html
<div>Hello World</div>
当然,如果您要使用 angular,我建议您使用像 Angular UI Router 这样的路由器 但正如您所见,您可以使用任何您知道的可在网络上运行的其他技术来做到这一点,NW.js 仍然是 chrome。