Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将单页Angular应用程序模板集成到Sails.js中_Javascript_Angularjs_Node.js_Sails.js_Yeoman - Fatal编程技术网

Javascript 将单页Angular应用程序模板集成到Sails.js中

Javascript 将单页Angular应用程序模板集成到Sails.js中,javascript,angularjs,node.js,sails.js,yeoman,Javascript,Angularjs,Node.js,Sails.js,Yeoman,我目前正在尝试构建一个教育性的单页web应用程序,前端使用Angular,后端使用Sails.js。我正在使用一个可以找到的Angular应用程序模板 我想将它集成到一个Sails.js项目中,我甚至通读并尝试了关于堆栈溢出的所有答案,其中包含了一个类似的问题,但没有一个答案对我有效。我可以使用index.html中的代码作为我的主页视图,使用该线程上的#1答案,但当它加载时,它只加载html(尽管我链接了所有css) 它也不会加载所有的角度功能(例如:如果您单击一个链接,例如注册页面,它会在页

我目前正在尝试构建一个教育性的单页web应用程序,前端使用Angular,后端使用Sails.js。我正在使用一个可以找到的Angular应用程序模板

我想将它集成到一个Sails.js项目中,我甚至通读并尝试了关于堆栈溢出的所有答案,其中包含了一个类似的问题,但没有一个答案对我有效。我可以使用index.html中的代码作为我的主页视图,使用该线程上的#1答案,但当它加载时,它只加载html(尽管我链接了所有css)

它也不会加载所有的角度功能(例如:如果您单击一个链接,例如注册页面,它会在页面底部加载该链接的html,但不会隐藏其他元素)

我怎么可能解决这个问题

注:如果需要额外的信息来回答这个问题,请询问,我将很乐意提供

编辑: 因此,这可能会有所帮助(Sails.js项目的文件结构和使用Yeoman生成的Angular web app模板的文件结构):

Sails.js项目文件结构:

  • 原料药
    • 适配器/
    • 控制器/
    • 模型/
    • 政策/
    • 服务/
  • 资产
    • 图像/
    • js/
    • 风格/
    • favicon.ico
    • robots.txt
  • 配置/
  • 节点单元/
  • 观点
    • 家/
    • 403.ejs
    • 404.ejs
    • 500.ejs
    • layout.ejs
  • Grunfile.js
  • app.js
  • package.JSON
角度单页web应用程序模板文件结构:

  • 应用程序
    • 404.html
    • 资产/
    • 鲍尔元件/
    • favicon.ico
    • favicon.png
    • 字体/
    • 图像/
    • index.html
    • robots.txt
    • 剧本/
    • 风格/
    • 观点/
  • bower.json
  • 距离/
  • Grunfile.js
  • karma-e2e.conf.js
  • karma.conf.js
  • 节点模块/
  • package.json
  • 预制/
  • 自述
  • 自述文件
  • 试验/

顺便说一下,dist和预构建文件夹与app文件夹相对相同。唯一的区别是dist文件夹是为生产而构建的,而预构建文件夹(相当明显)是预构建/示例版本的应用程序。

要使用Angular with Sails,首先确保Sails在构建应用程序时加载Angular应用程序文件,以确保javascript,css和html文件位于等效Sails文件夹下的assets文件夹中。 因此,角度javascript文件应位于assets/js、assets/styles中的css文件以及assets文件夹中可访问的html文件下

要将bower_组件包括在内,最好将它们也复制到资产下的文件夹中,例如,可以将它们复制到名为assets/vendor的文件夹中

Sails构建过程应包括bower_组件,因此在tasks/pipline.js中更改以下行:

// CSS files to inject in order
//
// (if you're using LESS with the built-in default config, you'll want
//  to change `assets/styles/importer.less` instead.)
var cssFilesToInject = [
  'vendor/**/*.css',
  'styles/**/*.css'
];


// Client-side javascript files to inject in order
// (uses Grunt-style wildcard/glob/splat expressions)
var jsFilesToInject = [

  'vendor/angular/*.js',
  'vendor/angular-*/*.js',

  // Load sails.io before everything else
  'js/dependencies/sails.io.js',

  // Dependencies like jQuery, or Angular are brought in here
  'js/dependencies/**/*.js',

  // All of the rest of your client-side js files
  // will be injected here in no particular order.
  'js/**/*.js'
];

我已经创建了一个实现Angular PhoneCat应用程序的模板,您可以克隆它并将其用作基础:

我确实使用此模板使其工作,但我昨天决定在我的项目中开始使用Laravel,它一直工作得很好。不过,下次我决定创建Angular+Sails应用程序时,我会记住这一点。谢谢你的帮助。