我正在使用 Vuetify 3 beta 和 vue-cli v5,但是当我尝试v-app-bar在我的模板中使用时,我得到Error: Could not find injected Vuetify layout
我试图在用户单击组件上的按钮时过滤状态中的一组对象.过滤的逻辑工作正常,但当它返回到组件时,过滤的对象丢失,而属性是未定义的.我错过了生命周期方法吗?
点击事件:
<div onClick={this.filterMyPosts}>My Posts</div>
...
<div>
{this.renderPosts()}
</div>
Run Code Online (Sandbox Code Playgroud)
filterMyPosts
filterMyPosts() {
this.props.updateFilter("myPosts");
// filtering function uses switch statement based on strings to filter posts
}
Run Code Online (Sandbox Code Playgroud)
组件容器:
const mapStateToProps = (state) => {
return {currentUser: state.session.currentUser,
posts: allPostsByFilter(state.posts, state.filter, state.session.currentUser.id, state.bookmarks)}
};
const mapDispatchToProps = (dispatch) => ({
updateFilter: (filter) => dispatch(updateFilter(filter))
})
Run Code Online (Sandbox Code Playgroud)
过滤发生在不同的文件中,该文件返回对象中的过滤事件.那个逻辑没有错误.
问题:当它到达以下函数时,"posts"是未定义的.因此,在过程中的某个地方,过滤后的帖子不会使其返回到组件.
renderPosts() {
return (
<div className ="user-profile-posts">
<ul>
{Object.keys(this.props.posts).map(id => <PostIndexItem
key={`posts-index-item${id}`}
post={this.props.posts[id]}
user={true}
/>)}
</ul>
</div>
);
}
Run Code Online (Sandbox Code Playgroud)
编辑 - 过滤功能
export …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过 javaScript 将图像上传到 S3 存储桶。提交请求时,返回以下错误:
XMLHttpRequest cannot load https://somebucket.s3-us-west
2.amazonaws.com/albums//apicture.png. Response to preflight
request doesn't pass access control check: No 'Access-Control-Allow-Origin'
header is present on the requested resource.
Origin 'http://someorigin:3000' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)
我在存储桶上的 CORS 配置:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>http://someorigin:3000</AllowedOrigin>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>DELETE</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)
我什至手动将原点添加到策略中,如您所见*,但似乎没有任何效果,我不知道从哪里开始。
我检查了 Chrome Devtools 中的网络窗格,注意到其中一个 XHR 是apicture.png,它具有以下关键信息:
Request URL:https://somebucket.s3-us-west-2.amazonaws.com/pics/apicture.png
Request Method:OPTIONS
Status Code:301 Moved Permanently
Run Code Online (Sandbox Code Playgroud)
该response选项卡还有一些其他重要信息:
<Error>
<Code>PermanentRedirect</Code>
<Message>The bucket …Run Code Online (Sandbox Code Playgroud) 我正在使用Angular uib datepicker,使用nocsss导入它,当我分页时,它会在调整大小之前简要显示两个日历.我已经尝试添加overflow: hidden到table日期选择器中,但这会导致整个日期选择器不可见.绿色方块是一个临时按钮,用于显示和隐藏日期选择器.为什么它与它并排是一个单独的问题.
我的scss:
.datepicker-container {
:global {
button:not(.uib-title) {
cursor: pointer;
}
.uib-datepicker {
//max-width: 238px;
//overflow: hidden; -> this makes the entire datepicker invisible
table {
margin: 0 auto;
}
}
.uib-right,
.uib-left {
height: 20px;
background: $some-blue;
}
.uib-title {
text-align: center;
width: 100%;
}
.uib-day {
padding: 0;
transition: all 200ms linear;
cursor: default;
button {
height: 24px;
width: 100%;
&:disabled {
color: $some-grey;
opacity: 0.75;
cursor: not-allowed;
}
&.active { …Run Code Online (Sandbox Code Playgroud) sass twitter-bootstrap angular-ui-bootstrap bootstrap-datepicker angular
我的 NVM 运行不正常。我目前在我的机器上使用 6.0.0 并且刚刚安装了 8.0.0 并且想要使用 8 作为默认版本。我跑:
nvm alias default node
我也试过 nvm alias default 8.0.0
但是当我检查版本时,我得到的只是 v6.0.0
如果我打开一个新的 shell 选项卡,留在当前选项卡中,或者杀死终端并从头开始,就会发生这种情况。
奇怪的是,6.0.0 甚至不在我的版本列表中:
nvm list
v8.0.0
-> system
default -> node (-> v8.0.0)
node -> stable (-> v8.0.0) (default)
stable -> 8.0 (-> v8.0.0) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> N/A)
lts/argon -> v4.8.7 (-> N/A)
lts/boron -> v6.12.3 (-> N/A)
lts/carbon -> v8.9.4 (-> N/A)
Run Code Online (Sandbox Code Playgroud)
我真的不知道这里发生了什么。我觉得我的 bash 配置文件一定以某种方式真的搞砸了,但我只是不知所措。
我的 bash_profile 确实包含这个:
export NVM_DIR="$HOME/.nvm"
[ …Run Code Online (Sandbox Code Playgroud) 假设我想切换消息中的每个字母,并将其放在反向字母表中.为什么我似乎无法使用捕获的组并在一个gsub中执行此操作?
也许有人可以解释一下在gsub中使用捕获的组,可以反向引用是否裸露(没有'')?我可以使用#{\ 1}吗?
def decode(message)
a = ('a'..'z').to_a
z = a.reverse
message.gsub!(/([[:alpha:]])/, z[a.index('\1')])
end
decode("the quick brown fox")
Run Code Online (Sandbox Code Playgroud) 我有与下面链接中描述的问题基本相同的问题,但我没有找到解决方案非常清楚.我希望我的ajax成功函数等到窗口函数执行完毕,然后修改div.相反,它修改当前页面的div,然后重定向.AJAX:成功重定向然后修改新页面
main.js
$("#form").submit( function(e) {
e.preventDefault();
var id = $('#searchbar').val(); // store the form's data.
$.ajax({
url: '/search',
type: 'POST',
data: {id:id},
dataType: 'text',
success: function(data) {
//Redirect to the page where we want to display the data
window.location.href = '/test';
data = JSON.parse(data);
console.log(data);
$("#count").text("we analyzed...");
$("#result1").text(data.county);
$("#totals").text("with a score of..");
$("#result2").text(data.totalSentiments);
},
error: function(jqXHR, textStatus, errorThrown){
console.log("error")
alert(textStatus, errorThrown);
}
});
});
Run Code Online (Sandbox Code Playgroud) 我有一个字符串"wwwggfffw",并希望将其分解为一个数组,如下所示:
["www", "gg", "fff", "w"]
Run Code Online (Sandbox Code Playgroud)
有没有办法用正则表达式做到这一点?
我正在尝试将类'animated fadeInDown'添加到h1的子节点中,这样字母就会从顶部单独淡入而不是一次性完成.我之所以不能手动输入这些类是因为我是使用lettering.js,当doc加载时,它会将"lorem ips"分解为其成分.
<h1 id = "letters">
<span class="char1">l</span>
<span class="char2">o</span>
<span class="char3">r</span>
<span class="char4">e</span>
<span class="char5">m</span>
<span class="char6"> </span>
<span class="char7">i</span>
<span class="char8">p</span>
<span class="char9">s</span>
</h1>
Run Code Online (Sandbox Code Playgroud)
我的jQuery:
$(document).ready(function() {
$("#letters").children().addClass('animated fadeInDown');
});
Run Code Online (Sandbox Code Playgroud)
事实上,理想情况下,我只希望前5个应用该类而不是所有类.
我试图总结一个数组的元素.没有使用展平.我尝试过使用以下内容:
def multi_array_sum(arr)
sum = 0
arr.each do |row|
row.each do |column|
sum += column
end
end
return sum
end
Run Code Online (Sandbox Code Playgroud)
但不幸的是,它没有用.我不知道如何迭代一个多维数组,考虑到each如果数组中的第一个元素不是另一个数组本身就不能使用,例如,array = [[1, [1, 2], [3, 4, 5]].
我试图在Ruby中制作战舰游戏,但是当我尝试创建游戏板的实例时,我得到"错误的参数数量,0表示1".我不知道我哪里出错了,因为初始化定义明确接受了参数.
class Board
attr_reader :grid, :default_grid
def intitalize(grid = self.class.default_grid, random = false)
@grid = grid
make_random_board if random
end
def self.default_grid
grid = Array.new(10){Array.new(10)}
end
def count
grid.flatten.count{|x| x == :s}
end
def self.random
self.new(self.default_grid, true)
end
def empty?(position = nil)
return true if position.nil?
else
false
end
def full?
grid.flatten.none?(&:nil?)
end
def place_random_ship
if full?
raise "error, board is full"
end
space = [rand(grid.length),rand(grid.length)]
until empty?(space)
space = [rand(grid.length),rand(grid.length)]
end
self[space] = :s
end
def make_random_board(count = 10) …Run Code Online (Sandbox Code Playgroud)