使用express构建的服务,没有使用视图引擎,将项目目录设置为静态:
app.use(express.static(__dirname + '/public'));
app.use(express.static(__dirname + '/view'));
app.use(express.static(__dirname + '/node_modules'));
node入口文件index.js在根目录下,目录结构为:
/
/index.js
/public
/view
/view/index.html(首页)
/view/sidebar.html(侧边菜单)
/public/js/app.js(首页的js文件)
index.html中引入如下:
<script src="angular/angular.min.js"></script>
<script src="angular-route/angular-route.min.js"></script>
<script src="js/app.js"></script>
index.html指令如下:
<my-sidebar></my-sidebar>
app.js如下:
var app = angular.module("myBlog", ["ngRoute"]);
app.directive("mySidebar", function () {
return {
restrict: "E",
replace: true,
templateURL: "sidebar.html",
}
})
经过测试发现templateURL没有起作用,请问应该如何写这个路径,或者如何查看这里的templateURL到底被解析成了什么样子?
元のコードは正しく書かれていますが、問題は解決しました。
リーリーejs ビュー エンジンを使用する方法を提供します:
../../view/sidebar.html
templateURLを絶対パスで記述します
templateURL: '/view/sidebar.html'
または、コンポーネント HTML テンプレートのルート パスを <base> タグに追加します