无法浏览文件-“错误:正在分析文件” (HTML5 checkValidity()吗?) [英] can't browserify file - "Error: Parsing file" (HTML5 checkValidity() ?)
问题描述
我想看看我是否可以使用mocha& amp;测试表单字段验证
我有以下文件:
./ src / index。 html
:
<!doctype html>
< html>
< head>
< title> TDD项目< / title>
< style>
#容器{width:600px;最大宽度:100%;保证金:1em auto;}
< / style>
< link rel = stylesheet href = ../ node_modules / mocha / mocha.css>
< / head>
< body>
< div id = container>
< form>
<输入类型=文本 id =文本占位符=输入一些文本必需的maxlength = 10 pattern = ^ [az,AZ] {1,10} $>< br />
<输入类型=文本 id =数字占位符=输入数字必需的maxlength = 10 pattern = \d {10}< br />
< input type = submit>
< / form>
< / div>
< div id = mocha>< / div>
< script src = ../ node_modules / mocha / mocha.js>< / script>
< script src = ../ node_modules / chai / chai.js>< / script>
< script> mocha.setup(‘bdd’)< / script>
< script src = ../ test / test2.js>< / script>
< script>
mocha.run();
< / script>
< / body>
< / html>
./ test / test.js
:
var assert = require( chai)。assert;
函数FormController(){
函数isValidField(fieldID){
field = document.getElementById(fieldID);
return(field.checkValidity()= true?true:false);
}
return {
isValidField
}
}
describe( Simple assert,function(){
it ( foo!= bar,function(){
assert('foo'!='bar','foo is not bar');
});
it('should如果字段有效则返回true',function(){
var isValidText = FormController.isValidField(text);
var isValidNumber = FormController.isValidField(number);
assert.equal(isValidText, true);
assert.equal(isValidNumber,true);
});
})
我已经运行了命令
> cd测试
> browserify test.js> test2.js
我收到错误:
错误:解析文件/Users/user/Documents/Projects/Contact_Form/test/test.js:分配给右值(6:15)
问题似乎出在 field.checkValidity()
,但我不明白为什么。
是因为文件 test.js
无法访问DOM吗?
checkValidity()
是在此页面。
帮助表示感谢。
来自此答案:
在条件检查块中使用=而不是==时,会出现右值错误。
I want to see if I can test form field validation using mocha & chai.
I have the following files:
./src/index.html
:
<!doctype html>
<html>
<head>
<title>TDD Project</title>
<style>
#container {width: 600px; max-width: 100%; margin: 1em auto;}
</style>
<link rel="stylesheet" href="../node_modules/mocha/mocha.css">
</head>
<body>
<div id="container">
<form>
<input type="text" id="text" placeholder="enter some text" required maxlength="10" pattern="^[a-z,A-Z]{1,10}$"><br />
<input type="text" id="number" placeholder="enter a number" required maxlength="10" pattern="\d{10}"><br />
<input type="submit">
</form>
</div>
<div id="mocha"></div>
<script src="../node_modules/mocha/mocha.js"></script>
<script src="../node_modules/chai/chai.js"></script>
<script>mocha.setup('bdd')</script>
<script src="../test/test2.js"></script>
<script>
mocha.run();
</script>
</body>
</html>
./test/test.js
:
var assert = require("chai").assert;
function FormController() {
function isValidField(fieldID){
field = document.getElementById(fieldID);
return(field.checkValidity() = true ? true : false);
}
return {
isValidField
}
}
describe("Simple assert", function() {
it("foo != bar", function() {
assert('foo' != 'bar', 'foo is not bar');
});
it('should return true if field is valid', function(){
var isValidText = FormController.isValidField(text);
var isValidNumber = FormController.isValidField(number);
assert.equal(isValidText, true);
assert.equal(isValidNumber, true);
});
})
I have run the commands
> cd test
> browserify test.js > test2.js
I receive the error:
Error: Parsing file /Users/user/Documents/Projects/Contact_Form/test/test.js: Assigning to rvalue (6:15)
The problem appears to be with field.checkValidity()
but I don't understand why.
Is it because the file test.js
cannot access the DOM?
checkValidity()
is a "HTML5 constraint validation API" discussed on this page.
Help appreciated.
From this answer:
You get rvalue error, when you use = instead of == in a condition checking block.
这篇关于无法浏览文件-“错误:正在分析文件” (HTML5 checkValidity()吗?)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!