有没有一种正确的方法可以在不重新加载所有数据的情况下从 vueJS 数组列表中刷新特定行?
在这种情况下,它是一个电话列表。
<template>
<table class="table">
<tr v-for="phone in phones">
<td @click="edit(phone.id)">
{{phone.number}}
</td>
<td class="pointerCursor" @click="edit(phone.id)">
{{phone.comment | truncate(90)}}
</td>
</tr>
</table>
</template>
<script>
export default {
data () {
return {
phones = [
{id:1, number: '001 656 88 44', comment:''},
{id:2, number: '610-910-3575 x2750', comment:'Quod odit quia'},
{id:3, number: '536.224.2639 x714', comment:'primary phone'},
{id:5, number: '0034 556 65 77', comment:'home phone phone'},
]
}
},
methods: {
edit(id) {
// update using an api that returns …
Run Code Online (Sandbox Code Playgroud) 我有两页:
search.php
包含一个名为的 vuejs 组件search.vue
person.php
包含另一个名为 的组件person.vue
。在 中search.vue
,我有到 的链接person.php
。
为什么组件中设置的样式search.vue
也会影响 中的 DOM person.vue
?
style
我的组件中的标签search.vue
:
<style>
.row {
background-color: red;
}
</style>
Run Code Online (Sandbox Code Playgroud)
href
除了通过链接打开页面之外,我没有其他地方可以连接这两个视图person.php
。
我从这篇文章中获得灵感来安全地访问我的存储中的文件.
帖子建议使用以下路线:
Route::get('file/{filename}', 'FileController@getFile')->where('filename', '^[^/]+$');
Run Code Online (Sandbox Code Playgroud)
所以我可以访问任何文件 http://yoursite.com/file/secret.jpg
问题如果{filename}
包含一个subfolder + filename
?网址看起来像http://yoursite.com/file/personal/secret.jpg
.找不到路线.
我也可能有很多级别的子文件夹.
可能的解决方案
作为一个临时的解决方案,我虽然更换的http://yoursite.com/file/personal/secret.jpg
通过http://yoursite.com/file/personal|secret.jpg
,从而{filename}
将等于personal|secret.jpg
.而在GetFile方法,我将取代|
的/
.但它看起来像一个丑陋的解决方案.
有更好的解决方案吗?
我正在使用Vue.js 2.1.10和Bootstrap 3.3.7来显示打开另一个模式对话框的模式。每个模式对话框都包含在不同的组件中。在第一个组件内部,有对第二个组件(select-travler
)的引用。
根据Bootsrap文档,我必须通过监听事件来设置焦点shown.bs.modal
。将焦点设置在第一个模态中包含的输入控件上非常有用。问题:当模态在另一个模态之上时,这种方式不起作用。
第一个模态组件如下所示:
<template>
<div ref="tripEdit" class="modal fade" role="dialog">
<!-- Inbeded component -->
<select-travler ref="selectTravler"></select-travler>
<!-- /Inbeded component -->
<div class="modal-lg modal-dialog">
<div class="modal-content">
<div class="modal-body container form-horizontal">
<div class="form-group">
<label for="travler_name" class="control-label">
Travler's name
</label>
<input id="travler_name" ref="travler_name"
v-model="travler_name"/>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data () {
return {
travler_name: null,
}
},
methods: {
show (operationType) {
$(this.$refs.tripEdit).modal('show');
let that = this;
$(this.$refs.tripEdit).on('shown.bs.modal', …
Run Code Online (Sandbox Code Playgroud)