草庐IT

javascript - 外部 gem 的 Assets 管道编码问题(UTF-8 与 ASCII-8BIT)

我正在尝试创建一个包装d3.js的gem,可以在https://github.com/iblue/d3-rails找到源代码所以当我将这个gem包含在我的Gemfile中时gem"d3-rails",:git=>"git://github.com/iblue/d3-rails.git"当我在application.js中包含javascript时://=required3然后我的Assets编译失败,我编译的application.js只包含throwError("Encoding::CompatibilityError:incompatiblecharacterencodings:U

javascript - 如何有效地使用 Jasmine 来测试通过 Jammit 打包的 javascript Assets ?

我有一个使用Jammit组合javascriptAssets的Rails应用程序,我想使用Jasmine用于我的javascript的BDD样式测试。我想知道是否有人对从Jasmine中访问Jammit生成的“包”有任何建议?问题是Jasmine是通过在磁盘上定义要测试的JS文件列表来配置的,然后它将这些文件包含在它自己的测试运行器页面中,该页面在浏览器中加载并运行。在使用Jammit打包之前,我可以在jasmine.yml配置文件中引用每个单独的JS文件...但是,Jammit已经为我处理了文件之间的依赖关系,更重要的是,我还需要访问已编译的javascripttemplatesJa

javascript - 如何优化服务和加载 JavaScript 文件?

我希望对全局范围的Web应用程序有更多经验的人可以澄清我的一些问题、假设和可能的误解。让我们假设一个站点(大量的客户端/动态组件),该站点在全局拥有数十万用户,并且从一个位置(假设是中欧)提供源。如果应用程序依赖于流行的JavaScript库,是从GoogleCDN中获取它并将其编译成一个缩小的JS文件(连同所有特定于应用程序的JavaScript)还是从GoogleCDN单独加载它更好?阿塞蒂克VSheadjs:加载单个JS文件或并行加载所有脚本(按依赖顺序执行)是否更有意义?我的假设(请纠正我):将所有特定于应用程序/本地的JS代码编译到一个文件中,使用像谷歌这样的CDN来访问流行

Rails 3.1 和 Assets 管道的 Javascript 单元测试

我正在寻找适用于Rails3.1的最简单的Javascript单元测试系统,它特别能够开箱即用地使用Assets管道。我尝试过jasminegem的各种变体,包括jasmine-rice、headless-jasmine-webkit。Jasminegem似乎不能与开箱即用的rails3.1一起使用,需要调整各种配置文件。Jasmine-rice和headless-jasmine-webkit都有复杂的依赖关系,需要对配置文件进行更多调整。有什么建议吗?理想情况下,我需要包含HTML/HAML固定装置,并且是headless的,但在这一点上,我会对任何允许我以最少配置测试我的javas

javascript - 未找到 Angular MINERR_ASSET 404

我在控制台上记录了一个错误:GEThttp://localhost:3000/js/lib/angular/MINERR_ASSET404(NotFound)我看到了thispost它说这是没有包含ngRoute模块的结果,但我有!公共(public)/js/app.js:window.app=angular.module('mean-blog-seed',['ngCookies','ngResource','ui.bootstrap','ngRoute','mean-blog-seed.controllers','mean-blog-seed.services']);然后我有一个引用

javascript - Jasmine 不会从 Assets 管道加载 javascript 文件

我正在开发一个gem,我已经安装了Jasminehttps://github.com/pivotal/jasmine-gem/我所有需要的JS文件都在我的list文件中,位于app/assets/javascripts/application.js//=requireunderscore//=requirebackbone//=require_tree.//vendor//=require_tree.//custom//=require_tree.//templates//=require_tree.//models//=require_tree.//collections//=req

javascript - AngularJS + Rails - 压缩 Assets 时的问题

我最近创建了一个带有Rails3.2.3后端的AngularJS1.0.0rc8应用程序,它在开发中运行良好,但是在部署到Heroku之后出现了一个UnknownProvidererror-显然是应用程序看不到服务对象。我知道现在有必要将angular-resource.js作为一个单独的文件包含进来,并将ngResource注入(inject)到应用程序模块中,如下所示://mainappjavascriptfile'usestrict';angular.module('contactapp',['ngResource']).config(['$routeProvider',func

javascript - 使用 Webpack 时 Typescript 编译器 "cannot find module"需要 CSS/图像 Assets

我正在编写vanillaJavascript,但使用Typescript编译器的checkJs选项在VSCode中进行类型检查。我将Webpack设置为加载各种Assets类型(CSS、图像等),这对于构建工作正常,但代码将这些语句视为错误。例如,在这段代码中require("bootstrap");require("bootstrap/dist/css/bootstrap.css");varimg=require("../img/image.png");第一行很好,但接下来的两行都在require()的(字符串)参数下显示错误,工具提示为“找不到模块(名称)”。我已经安装了@type

javascript - 92% block Assets 优化 - webpack

看来webpack卡在了92%blockAssets优化大约30秒以上以显示简单的js/css更改。这对于任何理智的人来说都太长了,无法坐下来等待他们生命中的大部分时间来看到应该立即呈现在附近的东西。我们处于开发模式(因此我们需要源映射,这会增加延迟)但它仍然不应超过30秒。此外,我们没有使用uglify(我在GitHub上看到它占用了大量时间)。我们如何才能让构建时间接近即时,或者比现在快得多?更新这是laravel-mix文件:letmix=require('laravel-mix');mix.react('resources/assets/js/app.js','public/j

javascript - 如何在不链接到所有其他 Assets 的多个页面中捆绑 Webpack Assets ?

Webpack有一些我无法理解的地方。大多数webpack示例显示了一个主要入口点app.js,它导入所有Webpack的其他React组件以递归构建结果文件。如果有多个入口点,比如pageA.js和pageB.js,我们将它们放入入口参数的数组中。然而,我的问题是我的“主要”入口点没有使用和导入每个组件。也许只是一些。在PageA上,我可能只导入ComponentA和ComponentB。在PageB上,我可能只导入ComponentB和ComponentC。然后在我的MainPage的main.js中,我可能只导入ComponentD。我可以将main.js、PageA和PageB