我感兴趣的是在Rails 3.0.x中管理资产的不同工具的优缺点(特别是在Heroku上).
关于这个主题已经存在一些较旧的问题,但同时也有一些新工具可用.
我对这些工具特别感兴趣:
Jammit似乎可以做AssetHat可以做的所有事情,也可以更长时间使用.那么AssetHat在哪里适合?
Rack PageSpeed似乎通过直接处理服务器响应来动态执行所有操作.这样做会遇到任何性能问题吗?您会推荐其他两种解决方案吗?
除了Assetic(由于PHP版本我不能使用),还有什么可以进行资产管理吗?
编辑:这是关于Web应用程序资产,如javascript和css,一个用于管理和缩小它们用于生产的库,可以在运行时使用或使用预编译资产.
我知道L5和Elixir仍处于开发阶段,但我很高兴开始考虑重组代码的方法.在L5和Elixir的背景下,我认为我的问题更多地与资产管理有关.
想澄清应如何处理连接和版本控制(在我的情况下,我使用的是Elixir styles()和version()).我遇到的问题是concat/version之后的新文件将位于一个新文件夹中,从原始css或js文件中破坏对资产的任何引用.
例如,原始CSS文件background-image: url('../img.png')将不再起作用.我尝试了几件事,但两者都不理想,特别是在供应商插件的情况下:
虽然这两个选项都可以使事情有效,但我觉得我可能会遗漏一些东西.使用javascript插件(例如带有自己的图像,字体,样式表等的插件)时,它也变得非常不切实际.
在连接和版本控制时,是否有更实用的方法来管理相对路径?
我对webpack允许公开npm上不可用或不包含在变量中的变量的各种方式感到有些困惑。我能够google通过使用公开Google可视化图表脚本的全局变量
resolve: {
extensions: ['.js', '.json'],
alias: {
'google': path.resolve(__dirname, 'vendor', 'google.js')
}
}
Run Code Online (Sandbox Code Playgroud)
结合
plugins: [
new webpack.ProvidePlugin({
'google': 'google'
})
]
Run Code Online (Sandbox Code Playgroud)
但是,查看webpack文档,还有其他两种匀场方法,看起来它们可能会做类似的事情。有imports-loader和exports-loader,和script-loader。我知道我已经链接到这些文档,但是仍然不清楚他们何时使用这四个文档的描述。
还要看这个例子,这个require没有分配给变量吗?这意味着去哪里?与此语法有关的文档在哪里?
require("imports?$=jquery!./file.js")
Run Code Online (Sandbox Code Playgroud)
我可以使用以下代码加载位图字体:
BitmapFont font= new BitmapFont(
Gdx.files.internal( "Fonts/MyFont.fnt" ),
Gdx.files.internal( "Fonts/MyFont.png" ),
false );
Run Code Online (Sandbox Code Playgroud)
但我正在尝试实现 AssetManager。所以我用以下代码重新编码了该片段:
AssetManager assetManager = new AssetManager();
assetManager.load( "Fonts/MyFont.fnt", BitmapFont.class );
assetManager.load( "Fonts/MyFont.png", Texture.class );
assetManager.finishLoading();
BitmapFont font = assetManager.get( "Fonts/MyFont.fnt" );
Run Code Online (Sandbox Code Playgroud)
当然如果失败了。对 finishLoading() 方法的调用返回一条消息,指示:
无法加载资产的依赖项:“Fonts/MyFont.fnt”
好的。这是有道理的,因为我没有对纹理做任何事情。那么如何将纹理文件作为依赖项传递?github.com/libgdx/libgdx/wiki/Managing-your-assets 说:
BitmapFontLoader 是异步加载器的一个很好的示例,它还具有需要在加载实际资源之前加载的依赖项(在这种情况下,它是存储字形的纹理)。同样,您可以用它做几乎任何事情。
嗯嗯!我猜他们会想:“……如果你知道怎么做就好了!” 但是,他们的示例并没有显示如何实现 - 事实上,他们的示例几乎显示了我所写的内容。所以,我很困惑。所有 Google 似乎都能找到如何处理 TTF 字体的示例,但没有找到常规旧位图字体的示例。
有谁有解决此错误的示例。太感谢了!
特别是我想到的情况是你有一个大的资产,如.psd,200 MB.一个艺术家去改变几个像素并检查它.假设deltas没有保持200 MB,任何更新到他的克隆/分支的人都将关闭历史记录.给定一个完整的开发周期,为每个客户提供大量信息.
我想要的是能够将这些文件标记为"在服务器上保留历史记录",就像传统的集中式VCS(如SVN或Perforce)一样.您可能会失去DVCS对这些文件的好处,但我愿意接受,只要我可以使用一个VCS(而不是1为资产,1为代码).
任何关于如何做到这一点(如果可能的话)的建议将不胜感激.
评估Nodej并尝试查看它是否符合我们的需求.来自铁轨世界,尽管搜索了很长时间,但仍有一些未解决的问题.
什么是使用Nodejs(Expressjs)管理资产的最佳方式?在rails中,静态资产是a)指纹用于永久缓存b)js和css被缩小3)scss被编译成css
什么是处理来自用户(如头像)的上传图像的最佳方式?
grunt有助于缩小和压缩html/css/javascript吗?
如何避免使用Node向服务器发送多个http请求.我不想为我需要的每个javascript资产发出多个http请求.Rails通过组合所有js和css文件来帮助这里.
此外,Mongodb是大多数项目的首选解决方案吗?我听到很多关于Mongodb的坏事以及关于它的好事.从长远来看,很难确定Mongo是否可以提供更多的读取,而不是写入可能有400-500 GB的数据.
任何帮助或指针?非常感谢您花时间将我指向正确的地方.
我正在改写我的一个项目,将片段用于平板电脑.我还决定开始使用Android Studio进行转换.非常简单,但我遇到了一个关于设置自定义字体这个非常简单的任务的问题.
我开始与这些: 在Android中自定义字体和 文件列表的资产文件夹及其子文件夹,这对于Android的片段设置自定义字体
在Eclipse中,我的类扩展了Activity,我在OnCreate没有问题的情况下执行了以下操作.(有一个目录和文件"assets/FUT_R.ttf")
TextView tv=(TextView)findViewById(R.id.someTextView);
Typeface font = Typeface.createFromAsset(getAssets(), "FUT_R.ttf");
tv.setTypeface(font);
Run Code Online (Sandbox Code Playgroud)
现在尝试将此Activity转换为ActionBarActivity(带有V7支持库的片段),我已将上述代码更改为此.(view带有一个Framelayout的手机充气布局在哪里)
TextView tv=(TextView) view.findViewById(R.id.someTextView);
Typeface font = Typeface.createFromAsset(getActivity().getAssets(), "FUT_R.ttf");
tv.setTypeface(font);
Run Code Online (Sandbox Code Playgroud)
java.lang.RuntimeException: native typeface cannot be made即使我在我的新项目中创建了'assets'目录并在其根目录中使用了FUT_R.ttf,它也会在运行时崩溃.
要确认资产管理器,我尝试了以下代码:
String[] f = null;
try {
f = getActivity().getAssets().list("");
}
catch (IOException e){
e.printStackTrace();
}
for(String f1:f){
Log.i("names",f1);
}
Run Code Online (Sandbox Code Playgroud)
得到以下输出:
07-26 07:40:40.134 2114-2114/com.myapp I/names: images
07-26 07:40:40.134 2114-2114/com.myapp I/names: sounds
07-26 07:40:40.134 2114-2114/com.myapp I/names: webkit
Run Code Online (Sandbox Code Playgroud)
我很困惑,因为我的'assets'目录或项目中没有这些文件和/或目录.显然错误是系统找不到我的字体文件.我究竟做错了什么?任何方向都会受到高度赞赏,我在这个愚蠢的问题上浪费了太多时间.
谢谢!
我正在建立一个资产跟踪数据库。资产因黑莓、个人电脑、服务器、显示器、扬声器、键盘、鼠标、椅子、桌子、小隔间、立方墙、打印机、冰箱、微波炉……各种各样的东西而异。该范围将是我的类别表:
create table AssetManagement.zCategory(
zCategoryId int identity primary key,
CategoryDescription varchar(15) unique not null
)
Run Code Online (Sandbox Code Playgroud)
计算机很容易有一个类别、制造商和型号,但某些资产(椅子或其他)可能只有一个型号。有些可能只有制造商。
我相信使用良好的数据库设计来强制执行以下操作是一个很好的设计:
因此,虽然模型可能有已知的制造商,资产可能有模型或制造商,或两者都有,但它应该始终有一个类别。
到目前为止,这是我想出的,我想过使用触发器来强制执行直接外键不会
create table AssetManagement.zModel(
zModelId int identity primary key,
zModelDescription varchar(15) unique not null,
zAssetCategoryId int not null references AssetManagement.zAssetCategory(zAssetCategoryId)
)
create table AssetManagement.zManufacturer(
zManufacturerId int identity primary key,
zManufacturerDescription varchar(15) unique not null
)
create table AssetManagement.zProduct
(
zProductId int identity primary key,
zProductDescription varchar(35),
zAssetCategoryId int references AssetManagement.zAssetCategory(zAssetCategoryId),
zModelId int references …Run Code Online (Sandbox Code Playgroud) 我在生产和开发中使用rails 3.
如何在css中使用asset_host路径,例如使用background-images?
我试过了:
.blerg{ background-image:url({asset_host}/images/blerg.gif); }
Run Code Online (Sandbox Code Playgroud)
但它只是在渲染文档中出现,在包含css以使其工作时,您还有什么特别之处吗?
css ruby-on-rails asset-management content-delivery-network background-image
我正在使用 HtmlWebpackPlugin 将 javascript 注入到我的模板文件中:
<html>
...
<body>
...
<?php echo $this->inlineScript(); ?>
<script type="text/javascript" src="/dist/vendor.js?a4212b4b10c2d4d2d73e"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但是,我需要在 PHP 代码之前注入生成的包<?php echo $this->inlineScript(); ?>,以使内联脚本正常工作(它们需要 JQuery,它将在 vendor.js 中加载)。
结果应该是:
<html>
...
<body>
...
<script type="text/javascript" src="/dist/vendor.js?a4212b4b10c2d4d2d73e"></script>
<?php echo $this->inlineScript(); ?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
有没有办法实现这一目标?也许可以使用占位符之类的<%= htmlWebpackPlugin.options.??? %>或类似的东西?如果它不能与 HtmlWebpackPlugin 一起使用,我可以使用另一个 webpack 插件吗?
javascript asset-management webpack html-webpack-plugin webpack-4