第一个帆没有创建.tmp/public,所以我手动完成.但它也不会将我的资源文件夹中的内容复制到我的公共文件夹中.有人可以解释为什么会这样吗?
那时,我得到的答案没有帮助,我现在更新到9.8,我似乎没有任何问题.
Maa*_*ter 11
我有同样的问题.运行sails lift时未创建.tmp文件夹.最终对我有用的是在我的sails应用程序的根文件夹中本地安装Grunt.所以只需npm install grunt在你的sails app文件夹中运行.让Grunt在全球范围内安装-g旗帜显然是不够的.本地安装后,您可以sails lift再次运行,并将创建.tmp文件夹.
希望这可以帮助!
Sails使用grunt来管理资产.一些"管理"涉及在项目文件夹结构和服务器的公共文件夹之间同步文件,但一如既往,我已经领先于自己.
配置grunt基于在Gruntfile.jssails项目的根目录中找到的文件.这个文件中有很多内容,但是,我将专注于javascript和css资产.
首次创建项目时,可以选择使用该--linker标志.使用该标志的一个例子是sails new projectName --linker.这是/assets两种情况下文件夹的目录结构:
使用该--linker标志
/assets
/images
/linker
/js
/styles
/templates
Run Code Online (Sandbox Code Playgroud)
未使用的--linker标志
/assets
/images
/js
/styles
Run Code Online (Sandbox Code Playgroud)
请注意,您可以--linker通过手动创建/linker文件夹并将其插入/assets路径来"升级"未使用该标志创建的项目.然后,您可以添加/js,/styles和/templates下/linker.
当开始经由帆服务器sails lift通过下面的文件夹结构中创建/同步时间grunt的内.tmp文件夹中:
.tmp
/public
Run Code Online (Sandbox Code Playgroud)
如果有任何其他的项目文件夹(例如/images,/js,/styles,/templates)含有它们复制内容/同步时间到.tmp/public文件夹中.的区别在于,如果一个/linker文件夹存在,则/js,/styles和另外的/templates文件夹下创建/linker.
layout.ejs档案怎么了?如果您使用该/linker文件夹,sails将更改您的layout.ejs文件以包含指向您的javascript和css文件的链接.因此,从项目/views文件夹提供的任何页面都可以访问这些文件中包含的javascript和css.
Grunt使用注释标签layout.ejs作为这些链接的placehodler.例如,放置在/style文件夹中的任何内容都将自动链接到layout.ejs这两个标记之间:
<!--STYLES-->
<!--STYLES END-->
Run Code Online (Sandbox Code Playgroud)
/js文件夹中的任何内容都将链接在这两个标记之间:
<!--SCRIPTS-->
<!--SCRIPTS END-->
Run Code Online (Sandbox Code Playgroud)
中点儿/templates文件夹这两个标记之间的链接:
<!--TEMPLATES-->
<!--TEMPLATES END-->
Run Code Online (Sandbox Code Playgroud)
以下是在任一情况下访问资产的方式:
使用该/linker文件夹
/js - > /linker/js/yourFile.js
/styles - > /linker/styles/yourCSS.css
不使用该/linker文件夹
/js - > /js/yourFile.js
/styles - > /styles/yourCSS.css
| 归档时间: |
|
| 查看次数: |
5698 次 |
| 最近记录: |