我有这个超级基本的起点:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link rel="stylesheet" type="text/css" href="Content/dictionary.css" />
<script src="Scripts/kuroshiro.min.js"></script>
</head>
<body>
<div id="searchResultsVue">
<table>
<tr v-for="r in results">
{{ r.Result.ent_seq }}
</tr>
</table>
</div>
<script src="https://vuejs.org/js/vue.js"></script>
<script>
var searchResultsVue = new Vue({
el: '#searchResultsVue',
data: { results: [{ Result: { ent_seq: 'asd' } }] }
});
</script>
</body>
</html>
但我明白了
[Vue警告]:属性或方法“ r”未在实例上定义,但在渲染期间被引用。通过初始化属性,确保在data选项中或对于基于类的组件,此属性都是反应性的。请参阅:https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties。
我不明白
最佳答案
这是HTML宽大的渲染实践的问题。当它为一个表构建Dom元素时,它期望一个特定的结构,任何偏离该结构的东西都被推到定义之外。
所以
<table>
<tr v-for="r in results">
{{ r.Result.ent_seq }}
</tr>
</table>
像
<table>
<tr v-for="r in results">
</tr>
</table>
{{ r.Result.ent_seq }}
然后,错误是它正在循环外看到对循环变量的调用。
As seen in this fiddle在代码周围添加表定义标记可防止其被推送。
关于javascript - 基本的Vue.js示例不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47911538/