Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – Electron app没有找到包含在内的CSS / JS大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个 HTML5网络应用程序,我通过Electron打包.我是通过gulp-electron包装的.

我遇到的问题是,当构建应用程序并运行它时,没有加载index.html文件中引用的CSS或JS文件.

我可以看到资产包含在构建中,并且是:myapp.app/Contents/resources/app/文件夹中.app包的一部分.

事实上,如果我cd到该目录并运行节点webserver(httpster),该应用程序运行正常.

这是我的CSS / JS被引用的方式:

<!-- CSS -->
<link rel="stylesheet" href="./bower_components/bootstrap/dist/css/bootstrap.min.css" type="text/css" media="screen">
<link rel="stylesheet" type="text/css" href="./styles/style.css" />
<link rel="stylesheet" href="./bower_components/angular-ui/build/angular-ui.min.css" type="text/css" media="screen">

<!-- Vendors -->
<script type="text/javascript" src="./js/nonangular/jquery-1.11.2.min.js"></script>
<script type="text/javascript" src="./js/nonangular/jquery-1.11.2.min.js"></script>

<script src="./bower_components/bootstrap/dist/js/bootstrap.min.js" type="text/javascript" charset="utf-8"></script>
<link rel="stylesheet" href="./bower_components/angular-ui/build/angular-ui.min.css" type="text/css" media="screen">


<!-- Non-angular libraries -->
<script type="text/javascript" src="./js/nonangular/lodash.min.js"></script>
<script type="text/javascript" src="./js/scripts.js"></script>

<!-- Angular external libraries for application -->
<script type="text/javascript" src="./node_modules/angular/angular.js"></script>
<script type="text/javascript" src="./node_modules/angular-route/angular-route.js"></script>
<script type="text/javascript" src="./node_modules/angular-sanitize/angular-sanitize.js"></script>
<script type="text/javascript" src="./node_modules/angular-animate/angular-animate.js"></script>
<script src="./bower_components/angular-ui/build/angular-ui.min.js" type="text/javascript"></script>
<script src="./node_modules/angular-ui-bootstrap/dist/ui-bootstrap.js" type="text/javascript" charset="utf-8"></script>
<script src="./node_modules/angular-ui-bootstrap/dist/ui-bootstrap-tpls.js" type="text/javascript" charset="utf-8"></script>

<script src="./bower_components/angular-activity-monitor/activity-monitor.min.js" type="text/javascript"></script>

<!-- Angular components -->
<!-- build:appcomponents js/appcomponents.js -->
<script type="text/javascript" src="./js/app.js"></script>
<script type="text/javascript" src="./js/config.js"></script>
<script type="text/javascript" src="./components/directives/main.nav.directive.js"></script>

<!-- Application sections -->
<!-- build:mainapp js/mainapp.js -->
<script type="text/javascript" src="./js/controller.js"></script>
<script src="./components/main/mainController.js" type="text/javascript" charset="utf-8"></script>

我已经尝试在引用无效的文件夹之前将路径更改为不包含’./’.

我的Gulpfile电子任务看起来像这样

gulp.task('electron',function() {

  gulp.src("")
    .pipe(electron({
      src: './app',packageJson: packageJson,release: './release',cache: './cache',version: 'v0.36.10',packaging: true,platforms: ['win32-ia32','darwin-x64'],platformresources: {
        darwin: {
          CFBundleDisplayName: packageJson.name,CFBundlEIDentifier: packageJson.name,CFBundlename: packageJson.name,CFBundLeversion: packageJson.version,icon: './app/gulp-electron.icns'
        },win: {
          "version-String": packageJson.version,"file-version": packageJson.version,"product-version": packageJson.version,"icon": './app/gulp-electron.ico'
        }
      }
    }))
    .pipe(gulp.dest(""));
});

我的app文件夹结构如下所示:

node.js – Electron app没有找到包含在内的CSS / JS

令人沮丧的是,我已经在另一个项目中使用了这个确切的设置,并且可执行文件工作正常,并且能够很好地到达.app包中捆绑的所有资产.

解决方法

事实证明,路径存在一些问题.

首先,CSS使用相对路径来引用图像.将其切换为绝对路径就可以了.这是指令的相同问题.用绝对路径切换相对路径就可以了.

最后,没有加载的实际CSS和JS文件看起来是因为在主index.html中有这样的:

<base href="/">

哪个搞乱了.删除它允许CSS和JS正确加载.

大佬总结

以上是大佬教程为你收集整理的node.js – Electron app没有找到包含在内的CSS / JS全部内容,希望文章能够帮你解决node.js – Electron app没有找到包含在内的CSS / JS所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。