提供源文件时,以下角度表单正确呈现,按下按钮时按钮正确提交(我减小了表单的大小以保持简洁(
<form class="form-horizontal ng-submit="entry.addEntry()" novalidate>
<fieldset class="form-group">
<label class="control-label col-md-2" for="price">Price:</label>
<div class="col-md-10">
<input id="price" type="text" class="form-control" ng-model="entry.price" placeholder="Price" title="Price" />
</div>
</fieldset>
<fieldset>
<button type="submit" class="btn btn-primary pull-right"> Submit Entry <i class="ion-checkmark-round"></i></button>
</fieldset>
</form>
但是在缩小(使用 Grunt 和 Usemin (并从 Dist 文件夹中提供缩小的文件后,表单输入会正确呈现,但提交按钮根本不存在。
dist/scripts/script.*******.js 的相关部分显示按钮 html 仍然存在
a.put('...<form class="form-horizontal" ng-submit="entry.addEntry()" novalidate>
<fieldset class="form-group has-feedback"> <label class="control-label col-md-2" for="price">Price:</label> <div class="col-md-10"> <input id="price" type="text" class="form-control" ng-model="entry.price" placeholder="Price" title="Price"> </div> </fieldset>
<fieldset>rn <button type="submit" class="btn btn-primary pull-right"> Submit Entry <i class="ion-checkmark-round"></i></button>rn </fieldset>rn rn </form>
显然,Grunt 缩小已将按钮发送到 dist 文件夹,但它只是没有渲染,无论是在 chrome 或 Firefox 中还是从 heroku 中
。我唯一能指出的奇怪事情是这些奇怪的空格,它们与一堆换行符和回车符一起插入到构建文件中。
如果这是罪魁祸首,该怎么办?另外,为什么咕噜咕噜的文件会在按钮周围插入空格?它在其他几个领域也做到了这一点。但无论如何,手动删除空格和换行符似乎并不能解决问题
在另一种非常相似的形式中,按钮在缩小后也不会呈现。在缩小脚本文件的该部分中还插入了一些空格。缩小后,应用程序中的所有其他按钮都会呈现并正常运行
我的编辑器是Visual Studio Code
请帮助我看看我做错了什么!
我解决了问题
这是其中一个输入字段中的一个小错误。实际上,不是我上面发布的那个。
我以旧输入标签的方式编写了一个文本区域标签作为自闭合标签
<textarea something something /></textarea>
未缩小,这被解释为我的意图,因此当然从未检测到错误
但在缩小过程中,它被简化为
<textarea something something />
从未正确关闭,因此删除了一些后续块
所以我想我可以从中概括:
HTML 解析器可以在缩小之前处理一些错误,但缩小解析器可能会以不同的方式处理错误,之后可能会出现错误
因此,任何奇怪的缩小后错误都应该仔细检查 HTML 以获得正确的标签格式